ORG.FREEDESKTOP.NETWORK1(5) org.freedesktop.network1 ORG.FREEDESKTOP.NETWORK1(5)

org.freedesktop.network1 - رابط کاربری D-Bus سرویس systemd-networkd

systemd-networkd.service(8) یک سرویس سیستمی است که رابط‌های شبکه را مدیریت و پیکربندی می‌کند. این صفحه رابط کاربری D-Bus آن را شرح می‌دهد.

سرویس systemd-networkd اشیاء و رابط‌های D-Bus متعددی را در گذرگاه سیستمی ارائه می‌دهد که در بخش‌های زیر شرح داده شده‌اند.

این سرویس رابط‌های زیر را روی شیء Manager در گذرگاه ارائه می‌دهد:

node /org/freedesktop/network1 {
  interface org.freedesktop.network1.Manager {
    methods:
      ListLinks(out a(iso) links);
      GetLinkByName(in  s name,
                    out i ifindex,
                    out o path);
      GetLinkByIndex(in  i ifindex,
                     out s name,
                     out o path);
      SetLinkNTP(in  i ifindex,
                 in  as servers);
      SetLinkDNS(in  i ifindex,
                 in  a(iay) addresses);
      SetLinkDNSEx(in  i ifindex,
                   in  a(iayqs) addresses);
      SetLinkDomains(in  i ifindex,
                     in  a(sb) domains);
      SetLinkDefaultRoute(in  i ifindex,
                          in  b enable);
      SetLinkLLMNR(in  i ifindex,
                   in  s mode);
      SetMulticastDNS(in  i ifindex,
                          in  s mode);
      SetLinkDNSOverTLS(in  i ifindex,
                        in  s mode);
      SetLinkDNSSEC(in  i ifindex,
                    in  s mode);
      SetLinkDNSSECNegativeTrustAnchors(in  i ifindex,
                                        in  as names);
      RevertLinkNTP(in  i ifindex);
      RevertLinkDNS(in  i ifindex);
      RenewLink(in  i ifindex);
      ForceRenewLink(in  i ifindex);
      ReconfigureLink(in  i ifindex);
      Reload();
      DescribeLink(in  i ifindex,
                   out s json);
      Describe(out s json);
    properties:
      readonly s OperationalState = '...';
      readonly s CarrierState = '...';
      readonly s AddressState = '...';
      readonly s IPv4AddressState = '...';
      readonly s IPv6AddressState = '...';
      readonly s OnlineState = '...';
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly t NamespaceId = ...;
      @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
      readonly u NamespaceNSID = ...;
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
};

اطلاعاتی درباره مدیر (manager) ارائه می‌دهد.

NamespaceId شامل شماره اینود (inode) مربوط به فضای نام شبکه (network namespace) است که سرویس شبکه در آن اجرا می‌شود. کلاینت می‌تواند این مقدار را با شماره اینود فضای نام شبکه خود مقایسه کند تا تأیید نماید که آیا این سرویس همان فضای نام شبکه را مدیریت می‌کند یا خیر.

NamespaceNSID شامل شناسه «nsid» است که هسته لینوکس برای فضای نام شبکه نگهداری می‌کند، در صورتی که شناسه‌ای اختصاص داده شده باشد.

node /org/freedesktop/network1/link/_1 {
  interface org.freedesktop.network1.Link {
    methods:
      SetNTP(in  as servers);
      SetDNS(in  a(iay) addresses);
      SetDNSEx(in  a(iayqs) addresses);
      SetDomains(in  a(sb) domains);
      SetDefaultRoute(in  b enable);
      SetLLMNR(in  s mode);
      SetMulticastDNS(in  s mode);
      SetDNSOverTLS(in  s mode);
      SetDNSSEC(in  s mode);
      SetDNSSECNegativeTrustAnchors(in  as names);
      RevertNTP();
      RevertDNS();
      Renew();
      ForceRenew();
      Reconfigure();
      Describe(out s json);
    properties:
      readonly s OperationalState = '...';
      readonly s CarrierState = '...';
      readonly s AddressState = '...';
      readonly s IPv4AddressState = '...';
      readonly s IPv6AddressState = '...';
      readonly s OnlineState = '...';
      readonly s AdministrativeState = '...';
      @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
      readonly (tt) BitRates = ...;
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
};

اطلاعاتی درباره رابط‌ها ارائه می‌دهد.

node /org/freedesktop/network1/network/_1 {
  interface org.freedesktop.network1.Network {
    properties:
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly s Description = '...';
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly s SourcePath = '...';
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly as MatchMAC = ['...', ...];
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly as MatchPath = ['...', ...];
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly as MatchDriver = ['...', ...];
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly as MatchType = ['...', ...];
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly as MatchName = ['...', ...];
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
};

اطلاعاتی درباره فایل‌های .network ارائه می‌دهد.

node /org/freedesktop/network1/link/_1 {
  interface org.freedesktop.network1.DHCPServer {
    properties:
      readonly a(uayayayayt) Leases = [...];
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly u PoolSize = ...;
      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
      readonly u PoolOffset = ...;
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
  interface org.freedesktop.network1.Link { ... };
};

اطلاعاتی درباره سرور DHCP ارائه می‌دهد. ویژگی Leases شامل اجاره‌های (leases) در حال حاضر فعال است. ویژگی PoolSize شامل تعداد کل نشانی‌ها در استخر نشانی پویا است. ویژگی PoolOffset شامل آفست از نشانی پایه زیرشبکه است که استخر از آنجا شروع می‌شود. این موارد متناظر با تنظیمات PoolSize= و PoolOffset= در systemd.network(5) هستند. مقدار UINT32_MAX به عنوان یک مقدار نگهبان (sentinel) برای PoolSize و PoolOffset استفاده می‌شود تا نشان دهد اطلاعات در دسترس نیست (یعنی هیچ سرور DHCP پیکربندی نشده یا پیوند در حالت بازپخش/relay است)، نه اینکه یک اندازه استخر یا آفست معتبر باشد.

node /org/freedesktop/network1/link/_1 {
  interface org.freedesktop.network1.DHCPv4Client {
    properties:
      readonly s State = '...';
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
  interface org.freedesktop.network1.Link { ... };
};

اطلاعاتی درباره وضعیت کلاینت DHCPv4 ارائه می‌دهد.

node /org/freedesktop/network1/link/_1 {
  interface org.freedesktop.network1.DHCPv6Client {
    properties:
      readonly s State = '...';
  };
  interface org.freedesktop.DBus.Peer { ... };
  interface org.freedesktop.DBus.Introspectable { ... };
  interface org.freedesktop.DBus.Properties { ... };
  interface org.freedesktop.network1.Link { ... };
};

اطلاعاتی درباره وضعیت کلاینت DHCPv6 ارائه می‌دهد.

مثال ۱. درون‌نگری org.freedesktop.network1.Manager در گذرگاه

$ gdbus introspect --system \
  --dest org.freedesktop.network1 \
  --object-path /org/freedesktop/network1

مثال ۲. درون‌نگری org.freedesktop.network1.Link در گذرگاه

$ gdbus introspect --system \
  --dest org.freedesktop.network1 \
  --object-path /org/freedesktop/network1/link/_11

این رابط‌های D-Bus از دستورالعمل‌های معمول نسخه‌بندی رابط[1] پیروی می‌کنند.

PoolSize و PoolOffset در نسخه ۲۶۱ اضافه شدند.

State در نسخه ۲۵۵ اضافه شد.

State در نسخه ۲۵۵ اضافه شد.

NamespaceNSID در نسخه ۲۵۶ اضافه شد.

systemd(1), systemd-networkd.service(8), networkctl(1)

1.
دستورالعمل‌های معمول نسخه‌بندی رابط
systemd 261.2