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 flags: 59 - readonly 60 description: > 61 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. 68 Configure the NTP servers on the system during write operation. 69 - 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. 74 - name: IPv6AcceptRA 75 type: boolean 76 description: > 77 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. 80 - name: NICEnabled 81 type: boolean 82 description: > 83 Boolean for to enabling or disabling the ethernet port 84 - name: LinkUp 85 type: boolean 86 flags: 87 - readonly 88 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. 93 - name: DefaultGateway 94 type: string 95 description: > 96 Default IPv4 gateway of the ethernet interface. 97 errors: 98 - xyz.openbmc_project.Common.Error.InvalidArgument 99 - 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: 107 - xyz.openbmc_project.Common.Error.InvalidArgument 108 109enumerations: 110 - name: LinkLocalConf 111 description: > 112 Possible link local auto configuration values. 113 values: 114 - name: fallback 115 - name: both 116 - name: v4 117 - name: v6 118 - name: none 119 120 - name: DHCPConf 121 description: > 122 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 131 values: 132 - name: both 133 - name: v4v6stateless 134 - name: v6 135 - name: v6stateless 136 - name: v4 137 - name: none 138