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 flags: 10 - const 11 description: > 12 Name of the ethernet interface. 13 - name: Speed 14 type: uint32 15 flags: 16 - readonly 17 description: > 18 Current speed of the ethernet interface, in Mbps. 19 - name: AutoNeg 20 type: boolean 21 flags: 22 - readonly 23 description: > 24 This indicates if the speed and duplex are automatically negotiated 25 and configured on this ethernet interface. 26 - 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. 32 - name: DomainName 33 type: array[string] 34 description: > 35 Domain names of the ethernet interface. 36 - name: DHCPEnabled 37 type: enum[self.DHCPConf] 38 description: > 39 Address mode of the ethernet interface. 40 - name: Nameservers 41 type: array[string] 42 description: > 43 DNS servers that are currently in use on this interface. 44 errors: 45 - xyz::openbmc_project.Common.Error.NotAllowed 46 - 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: 55 - xyz.openbmc_project.Common.Error.InvalidArgument 56 - name: NTPServers 57 type: array[string] 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