blob: 096f5b50da3747da24d2941d681a3d039bebba01 [file] [log] [blame]
Ratan Gupta4c8247b2017-03-16 16:23:06 +05301description: >
2 This defines an ethernet interface.
3 An object implementing this interface must implement
4 xyz.openbmc_project.State.OperationalStatus.
5
Ratan Gupta4c8247b2017-03-16 16:23:06 +05306properties:
7 - name: InterfaceName
8 type: string
Jiaqing Zhao9ac27782022-04-14 10:55:35 +08009 flags:
10 - const
Ratan Gupta4c8247b2017-03-16 16:23:06 +053011 description: >
12 Name of the ethernet interface.
Ratan Gupta4c8247b2017-03-16 16:23:06 +053013 - name: Speed
14 type: uint32
Jiaqing Zhao13feabc2022-04-14 10:36:16 +080015 flags:
16 - readonly
Ratan Gupta4c8247b2017-03-16 16:23:06 +053017 description: >
18 Current speed of the ethernet interface, in Mbps.
19 - name: AutoNeg
20 type: boolean
Jiaqing Zhao13feabc2022-04-14 10:36:16 +080021 flags:
22 - readonly
Ratan Gupta4c8247b2017-03-16 16:23:06 +053023 description: >
24 This indicates if the speed and duplex are automatically negotiated
25 and configured on this ethernet interface.
Tejas Patil0ef46c12021-07-19 17:34:57 +053026 - name: MTU
27 type: size
28 default: 0
29 description: >
30 This indicates the size in bytes of largest protocol data unit,
31 which can be passed in an Ethernet frame on the interface.
Ratan Gupta4c8247b2017-03-16 16:23:06 +053032 - name: DomainName
33 type: array[string]
34 description: >
35 Domain names of the ethernet interface.
36 - name: DHCPEnabled
Johnathan Mantey19770592020-06-16 09:25:19 -070037 type: enum[self.DHCPConf]
Ratan Gupta4c8247b2017-03-16 16:23:06 +053038 description: >
39 Address mode of the ethernet interface.
40 - name: Nameservers
41 type: array[string]
42 description: >
Manojkiran Eda496741a2019-10-13 18:46:11 +053043 DNS servers that are currently in use on this interface.
Manojkiran Eda83968c32019-08-22 11:59:13 +053044 errors:
Manojkiran Eda262ac242019-08-08 14:35:06 +053045 - xyz::openbmc_project.Common.Error.NotAllowed
Manojkiran Eda496741a2019-10-13 18:46:11 +053046 - name: StaticNameServers
47 type: array[string]
48 description: >
49 A statically defined set of DNS server IP addresses to be used when
50 DHCP provisioning is not enabled for name server configuration. As
51 an implementation option this may also be used in addition to DHCP
52 provided addresses, or in cases where the DHCP server provides no DNS
53 assigments.
54 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050055 - xyz.openbmc_project.Common.Error.InvalidArgument
Ratan Guptaa51dea72017-08-23 18:13:33 +053056 - name: NTPServers
57 type: array[string]
Sunitha Harishe11e2fa2022-02-03 04:25:31 -060058 flags:
59 - readonly
Ratan Guptaa51dea72017-08-23 18:13:33 +053060 description: >
Sunitha Harishe11e2fa2022-02-03 04:25:31 -060061 NTP servers that are currently in use on this interface.
62 This includes both DHCP and static NTP server addresses.
63 - name: StaticNTPServers
64 type: array[string]
65 description: >
66 This property describes statically defined NTPServers on the
67 interface. This property supports read/write operation.
Ratan Guptaa51dea72017-08-23 18:13:33 +053068 Configure the NTP servers on the system during write operation.
Ravi Teja0edc82d2019-04-24 00:57:20 -050069 - name: LinkLocalAutoConf
70 type: enum[self.LinkLocalConf]
71 description: >
72 This indicates link local auto configuration on this ethernet
73 interface and configured on this ethernet interface.
Johnathan Mantey8d6cb9b2019-06-25 09:20:50 -070074 - name: IPv6AcceptRA
75 type: boolean
76 description: >
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -080077 Boolean for accepting router advertisements in IPv6. This control is
78 being deprecated in favor of the DHCPConf enumerations
79 below. Removal of this entry is deferred.
Johnathan Manteyb43056f2019-10-29 16:15:18 -070080 - name: NICEnabled
81 type: boolean
82 description: >
83 Boolean for to enabling or disabling the ethernet port
Johnathan Mantey97b51292020-01-08 10:56:19 -080084 - name: LinkUp
85 type: boolean
86 flags:
Jiaqing Zhao1bf1b7b2022-04-13 15:59:17 +080087 - readonly
Johnathan Mantey97b51292020-01-08 10:56:19 -080088 description: >
89 This property reports the link status for the NIC. The read-only
90 boolean value is TRUE when the network cable is inserted, or there
91 is a carrier signal. It is FALSE when the cable is unplugged, or the
92 carrier signal is missing.
Ravi Teja0f572912020-07-06 09:37:59 -050093 - name: DefaultGateway
94 type: string
95 description: >
96 Default IPv4 gateway of the ethernet interface.
97 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050098 - xyz.openbmc_project.Common.Error.InvalidArgument
Ravi Teja0f572912020-07-06 09:37:59 -050099 - name: DefaultGateway6
100 type: string
101 description: >
102 Default IPv6 gateway of the ethernet interface.
103 For supported address formats refer RFC 2373.
104 Refer below man page for both v4 and v6 address format details
105 https://man7.org/linux/man-pages/man3/inet_pton.3.html
106 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -0500107 - xyz.openbmc_project.Common.Error.InvalidArgument
Ravi Teja0edc82d2019-04-24 00:57:20 -0500108
109enumerations:
110 - name: LinkLocalConf
111 description: >
112 Possible link local auto configuration values.
113 values:
Patrick Williams8da396c2022-03-14 14:21:02 -0500114 - name: fallback
115 - name: both
116 - name: v4
117 - name: v6
118 - name: none
Andrew Geisslerfcc419b2020-06-04 10:26:16 -0500119
Johnathan Mantey19770592020-06-16 09:25:19 -0700120 - name: DHCPConf
121 description: >
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800122 High level definitions of available DHCP states.
123 These definitions do not have a 1:1 correlation to the
124 systemd.network configuration file contents.
125 both: Enable IPv4 DHCP and IPv6 Stateful DHCP
126 v4v6stateless: Enable IPv4 DHCP and IPv6 SLAAC
127 v6: Enable IPv6 Stateful DHCP
128 v6stateless: Enable IPv6 SLAAC
129 v4: Enable IPv4 DHCP
130 none: Disable DHCP for IPv4 and IPv6
Johnathan Mantey19770592020-06-16 09:25:19 -0700131 values:
Patrick Williams8da396c2022-03-14 14:21:02 -0500132 - name: both
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800133 - name: v4v6stateless
Patrick Williams8da396c2022-03-14 14:21:02 -0500134 - name: v6
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800135 - name: v6stateless
136 - name: v4
Patrick Williams8da396c2022-03-14 14:21:02 -0500137 - name: none