blob: f382ee1e2c5a4dabcbb58f454a35d7fe9dfab992 [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
9 description: >
10 Name of the ethernet interface.
Ratan Gupta4c8247b2017-03-16 16:23:06 +053011 - name: Speed
12 type: uint32
13 description: >
14 Current speed of the ethernet interface, in Mbps.
15 - name: AutoNeg
16 type: boolean
17 description: >
18 This indicates if the speed and duplex are automatically negotiated
19 and configured on this ethernet interface.
Tejas Patil0ef46c12021-07-19 17:34:57 +053020 - name: MTU
21 type: size
22 default: 0
23 description: >
24 This indicates the size in bytes of largest protocol data unit,
25 which can be passed in an Ethernet frame on the interface.
Ratan Gupta4c8247b2017-03-16 16:23:06 +053026 - name: DomainName
27 type: array[string]
28 description: >
29 Domain names of the ethernet interface.
30 - name: DHCPEnabled
Johnathan Mantey19770592020-06-16 09:25:19 -070031 type: enum[self.DHCPConf]
Ratan Gupta4c8247b2017-03-16 16:23:06 +053032 description: >
33 Address mode of the ethernet interface.
34 - name: Nameservers
35 type: array[string]
36 description: >
Manojkiran Eda496741a2019-10-13 18:46:11 +053037 DNS servers that are currently in use on this interface.
Manojkiran Eda83968c32019-08-22 11:59:13 +053038 errors:
Manojkiran Eda262ac242019-08-08 14:35:06 +053039 - xyz::openbmc_project.Common.Error.NotAllowed
Manojkiran Eda496741a2019-10-13 18:46:11 +053040 - name: StaticNameServers
41 type: array[string]
42 description: >
43 A statically defined set of DNS server IP addresses to be used when
44 DHCP provisioning is not enabled for name server configuration. As
45 an implementation option this may also be used in addition to DHCP
46 provided addresses, or in cases where the DHCP server provides no DNS
47 assigments.
48 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050049 - xyz.openbmc_project.Common.Error.InvalidArgument
Ratan Guptaa51dea72017-08-23 18:13:33 +053050 - name: NTPServers
51 type: array[string]
Sunitha Harishe11e2fa2022-02-03 04:25:31 -060052 flags:
53 - readonly
Ratan Guptaa51dea72017-08-23 18:13:33 +053054 description: >
Sunitha Harishe11e2fa2022-02-03 04:25:31 -060055 NTP servers that are currently in use on this interface.
56 This includes both DHCP and static NTP server addresses.
57 - name: StaticNTPServers
58 type: array[string]
59 description: >
60 This property describes statically defined NTPServers on the
61 interface. This property supports read/write operation.
Ratan Guptaa51dea72017-08-23 18:13:33 +053062 Configure the NTP servers on the system during write operation.
Ravi Teja0edc82d2019-04-24 00:57:20 -050063 - name: LinkLocalAutoConf
64 type: enum[self.LinkLocalConf]
65 description: >
66 This indicates link local auto configuration on this ethernet
67 interface and configured on this ethernet interface.
Johnathan Mantey8d6cb9b2019-06-25 09:20:50 -070068 - name: IPv6AcceptRA
69 type: boolean
70 description: >
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -080071 Boolean for accepting router advertisements in IPv6. This control is
72 being deprecated in favor of the DHCPConf enumerations
73 below. Removal of this entry is deferred.
Johnathan Manteyb43056f2019-10-29 16:15:18 -070074 - name: NICEnabled
75 type: boolean
76 description: >
77 Boolean for to enabling or disabling the ethernet port
Johnathan Mantey97b51292020-01-08 10:56:19 -080078 - name: LinkUp
79 type: boolean
80 flags:
Jiaqing Zhao1bf1b7b2022-04-13 15:59:17 +080081 - readonly
Johnathan Mantey97b51292020-01-08 10:56:19 -080082 description: >
83 This property reports the link status for the NIC. The read-only
84 boolean value is TRUE when the network cable is inserted, or there
85 is a carrier signal. It is FALSE when the cable is unplugged, or the
86 carrier signal is missing.
Ravi Teja0f572912020-07-06 09:37:59 -050087 - name: DefaultGateway
88 type: string
89 description: >
90 Default IPv4 gateway of the ethernet interface.
91 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050092 - xyz.openbmc_project.Common.Error.InvalidArgument
Ravi Teja0f572912020-07-06 09:37:59 -050093 - name: DefaultGateway6
94 type: string
95 description: >
96 Default IPv6 gateway of the ethernet interface.
97 For supported address formats refer RFC 2373.
98 Refer below man page for both v4 and v6 address format details
99 https://man7.org/linux/man-pages/man3/inet_pton.3.html
100 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -0500101 - xyz.openbmc_project.Common.Error.InvalidArgument
Ravi Teja0edc82d2019-04-24 00:57:20 -0500102
103enumerations:
104 - name: LinkLocalConf
105 description: >
106 Possible link local auto configuration values.
107 values:
Patrick Williams8da396c2022-03-14 14:21:02 -0500108 - name: fallback
109 - name: both
110 - name: v4
111 - name: v6
112 - name: none
Andrew Geisslerfcc419b2020-06-04 10:26:16 -0500113
Johnathan Mantey19770592020-06-16 09:25:19 -0700114 - name: DHCPConf
115 description: >
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800116 High level definitions of available DHCP states.
117 These definitions do not have a 1:1 correlation to the
118 systemd.network configuration file contents.
119 both: Enable IPv4 DHCP and IPv6 Stateful DHCP
120 v4v6stateless: Enable IPv4 DHCP and IPv6 SLAAC
121 v6: Enable IPv6 Stateful DHCP
122 v6stateless: Enable IPv6 SLAAC
123 v4: Enable IPv4 DHCP
124 none: Disable DHCP for IPv4 and IPv6
Johnathan Mantey19770592020-06-16 09:25:19 -0700125 values:
Patrick Williams8da396c2022-03-14 14:21:02 -0500126 - name: both
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800127 - name: v4v6stateless
Patrick Williams8da396c2022-03-14 14:21:02 -0500128 - name: v6
Johnathan Mantey8db5d8d2021-12-22 14:40:37 -0800129 - name: v6stateless
130 - name: v4
Patrick Williams8da396c2022-03-14 14:21:02 -0500131 - name: none