1description: > 2 This defines an ethernet interface. 3 An object implementing this interface must implement 4 xyz.openbmc_project.State.OperationalStatus. 5 6properties: 7 - name: InterfaceName 8 type: string 9 description: > 10 Name of the ethernet interface. 11 - 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. 20 - 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. 26 - name: DomainName 27 type: array[string] 28 description: > 29 Domain names of the ethernet interface. 30 - name: DHCPEnabled 31 type: enum[self.DHCPConf] 32 description: > 33 Address mode of the ethernet interface. 34 - name: Nameservers 35 type: array[string] 36 description: > 37 DNS servers that are currently in use on this interface. 38 errors: 39 - xyz::openbmc_project.Common.Error.NotAllowed 40 - 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: 49 - xyz.openbmc_project.Common.Error.InvalidArgument 50 - name: NTPServers 51 type: array[string] 52 flags: 53 - readonly 54 description: > 55 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. 62 Configure the NTP servers on the system during write operation. 63 - 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. 68 - name: IPv6AcceptRA 69 type: boolean 70 description: > 71 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. 74 - name: NICEnabled 75 type: boolean 76 description: > 77 Boolean for to enabling or disabling the ethernet port 78 - name: LinkUp 79 type: boolean 80 flags: 81 - readonly 82 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. 87 - name: DefaultGateway 88 type: string 89 description: > 90 Default IPv4 gateway of the ethernet interface. 91 errors: 92 - xyz.openbmc_project.Common.Error.InvalidArgument 93 - 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: 101 - xyz.openbmc_project.Common.Error.InvalidArgument 102 103enumerations: 104 - name: LinkLocalConf 105 description: > 106 Possible link local auto configuration values. 107 values: 108 - name: fallback 109 - name: both 110 - name: v4 111 - name: v6 112 - name: none 113 114 - name: DHCPConf 115 description: > 116 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 125 values: 126 - name: both 127 - name: v4v6stateless 128 - name: v6 129 - name: v6stateless 130 - name: v4 131 - name: none 132