diff --git a/README.md b/README.md index 9d66088..2612c46 100644 --- a/README.md +++ b/README.md @@ -113,6 +113,7 @@ variable. Valid values for `type` are: - `ethernet` + - `infiniband` - `bridge` - `bond` - `team` @@ -142,7 +143,7 @@ to match a non-virtual device with the profile. - For NetworkManager `mac` is the permanent MAC address `ethernet.mac-address`. -- For initscripts, this means the currently configurd MAC address of the device (`HWADDR`). +- For initscripts, this means the currently configured MAC address of the device (`HWADDR`). ### `interface_name` @@ -252,6 +253,13 @@ network_connections: #dhcp4_send_hostname: no gateway4: 192.0.2.1 + dns: + - 192.0.2.2 + - 198.51.100.5 + dns_search: + - example.com + - subdomain.example.com + route_metric6: -1 auto6: no gateway6: 2001:db8::1 @@ -260,6 +268,18 @@ network_connections: - 192.0.2.3/24 - 198.51.100.3/26 - 2001:db8::80/7 + + route: + - network: 198.51.100.128 + prefix: 26 + gateway: 198.51.100.1 + metric: 2 + - network: 198.51.100.64 + prefix: 26 + gateway: 198.51.100.6 + metric: 4 + route_append_only: no + rule_append_only: yes ``` Manual addressing can be specified via a list of addresses and prefixes `address`. @@ -273,14 +293,50 @@ Note that `dhcp4_send_hostname` is only supported by the `nm` provider and trans to [`ipv4.dhcp-send-hostname`](https://developer.gnome.org/NetworkManager/stable/nm-settings.html#nm-settings.property.ipv4.dhcp-send-hostname) property. +Manual DNS configuration can be specified via a list of addresses +given in the `dns` option and a list of domains to search given in the +`dns_search` option. + - For NetworkManager, `route_metric4` and `route_metric6` corresponds to the [`ipv4.route-metric`](https://developer.gnome.org/NetworkManager/stable/nm-settings.html#nm-settings.property.ipv4.route-metric) and [`ipv6.route-metric`](https://developer.gnome.org/NetworkManager/stable/nm-settings.html#nm-settings.property.ipv6.route-metric) properties, respectively. If specified, it determines the route metric for DHCP assigned routes and the default route, and thus the priority for multiple interfaces. +Static route configuration can be specified via a list of routes given in the `route` +option. The default value is an empty list. Each route is a dictionary with the following +entries: `network`, `prefix`, `gateway` and `metric`. `network` and `prefix` together specify +the destination network. CIDR notation or network mask notation are not supported yet. If the +boolean option `route_append_only` is `yes`, the specified routes are appended to the +existing routes, if it is `no` (default), the current routes are replaced. Setting this +option to `yes` without setting `route` has the effect of preserving the current static routes. The +boolean option `rule_append_only` works in a similar way for routing rules. Note that there is +no further support for routing rules at the moment, so this option serves merely the purpose +of preserving the current routing rules. Note also that when +`route_append_only`/`rule_append_only` is not specified, the current routes/routing rules will +be deleted by the role. + Slaves to bridge/bond/team devices cannot specify `ip` settings. +### `type: ethernet` + +Ethernet-specific options can be set using the connection profile variable `ethernet`. This +variable should be specified as a dictionary with the following items (options): `autoneg`, `speed` and `duplex`, +which correspond to the settings of the `ethtool` utility with the same name. `speed` is an +integer giving the speed in Mb/s, the valid values of `duplex` are `half` and `full`, and +`autoneg` accepts a boolean value (default is `yes`) to configure autonegotiation. The `speed` and `duplex` settings are required when autonegotiation is disabled. + +```yaml +network_connections: + - name: "eth0" + type: "ethernet" + + ethernet: + autoneg: no + speed: 1000 + duplex: full +``` + ### Virtual types and Slaves Device types like `bridge`, `bond`, `team` work similar: