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 flags: 14 - readonly 15 description: > 16 Current speed of the ethernet interface, in Mbps. 17 - name: AutoNeg 18 type: boolean 19 flags: 20 - readonly 21 description: > 22 This indicates if the speed and duplex are automatically negotiated 23 and configured on this ethernet interface. 24 - name: MTU 25 type: size 26 default: 0 27 description: > 28 This indicates the size in bytes of largest protocol data unit, 29 which can be passed in an Ethernet frame on the interface. 30 - name: DomainName 31 type: array[string] 32 description: > 33 Domain names of the ethernet interface. 34 - name: DHCPEnabled 35 type: enum[self.DHCPConf] 36 description: > 37 Address mode of the ethernet interface. 38 - name: Nameservers 39 type: array[string] 40 description: > 41 DNS servers that are currently in use on this interface. 42 errors: 43 - xyz::openbmc_project.Common.Error.NotAllowed 44 - name: StaticNameServers 45 type: array[string] 46 description: > 47 A statically defined set of DNS server IP addresses to be used when 48 DHCP provisioning is not enabled for name server configuration. As 49 an implementation option this may also be used in addition to DHCP 50 provided addresses, or in cases where the DHCP server provides no DNS 51 assigments. 52 errors: 53 - xyz.openbmc_project.Common.Error.InvalidArgument 54 - name: NTPServers 55 type: array[string] 56 flags: 57 - readonly 58 description: > 59 NTP servers that are currently in use on this interface. 60 This includes both DHCP and static NTP server addresses. 61 - name: StaticNTPServers 62 type: array[string] 63 description: > 64 This property describes statically defined NTPServers on the 65 interface. This property supports read/write operation. 66 Configure the NTP servers on the system during write operation. 67 - name: LinkLocalAutoConf 68 type: enum[self.LinkLocalConf] 69 description: > 70 This indicates link local auto configuration on this ethernet 71 interface and configured on this ethernet interface. 72 - name: IPv6AcceptRA 73 type: boolean 74 description: > 75 Boolean for accepting router advertisements in IPv6. This control is 76 being deprecated in favor of the DHCPConf enumerations 77 below. Removal of this entry is deferred. 78 - name: NICEnabled 79 type: boolean 80 description: > 81 Boolean for to enabling or disabling the ethernet port 82 - name: LinkUp 83 type: boolean 84 flags: 85 - readonly 86 description: > 87 This property reports the link status for the NIC. The read-only 88 boolean value is TRUE when the network cable is inserted, or there 89 is a carrier signal. It is FALSE when the cable is unplugged, or the 90 carrier signal is missing. 91 - name: DefaultGateway 92 type: string 93 description: > 94 Default IPv4 gateway of the ethernet interface. 95 errors: 96 - xyz.openbmc_project.Common.Error.InvalidArgument 97 - name: DefaultGateway6 98 type: string 99 description: > 100 Default IPv6 gateway of the ethernet interface. 101 For supported address formats refer RFC 2373. 102 Refer below man page for both v4 and v6 address format details 103 https://man7.org/linux/man-pages/man3/inet_pton.3.html 104 errors: 105 - xyz.openbmc_project.Common.Error.InvalidArgument 106 107enumerations: 108 - name: LinkLocalConf 109 description: > 110 Possible link local auto configuration values. 111 values: 112 - name: fallback 113 - name: both 114 - name: v4 115 - name: v6 116 - name: none 117 118 - name: DHCPConf 119 description: > 120 High level definitions of available DHCP states. 121 These definitions do not have a 1:1 correlation to the 122 systemd.network configuration file contents. 123 both: Enable IPv4 DHCP and IPv6 Stateful DHCP 124 v4v6stateless: Enable IPv4 DHCP and IPv6 SLAAC 125 v6: Enable IPv6 Stateful DHCP 126 v6stateless: Enable IPv6 SLAAC 127 v4: Enable IPv4 DHCP 128 none: Disable DHCP for IPv4 and IPv6 129 values: 130 - name: both 131 - name: v4v6stateless 132 - name: v6 133 - name: v6stateless 134 - name: v4 135 - name: none 136