Network Services Configuration Module

The initial version of the Network Services configuration module implements DNS clients and servers, with syslog, NTP, and SNMP planned for future releases.

DNS Support

netlab can configure DNS clients or servers on these platforms:

Device

IPv4 DNS

client

IPv6 DNS

client

Transport

VRF

DNS server

Arista EOS

BIRD

Cisco IOS[*1]

Cisco IOS XR[*2]

Cisco Nexus OS

dnsmasq

FRRouting (containers)

Junos[*3]

KinD cluster

Linux (containers)

Nokia SR Linux

DNS Parameters

You can configure the DNS client with the global/node services.dns dictionary:

  • services.dns.domain (string): The lab domain (default: netlab.local)

  • services.dns.server (node name or list of node names): Specifies the DNS server(s) node name. The node name(s) are resolved to IPv4/IPv6 addresses, which are then used to configure the lab devices.

  • services.dns.ipv4 and services.dns.ipv6 (address or list of addresses): Hard-coded IPv4/IPv6 DNS server addresses.

  • services.dns.transport_vrf: the VRF used to reach the DNS server.

Warning

Configuring module: [ services ] and services.dns.server at the lab topology level is not enough to run DNS clients on all host nodes. The hosts do not inherit topology-level modules; you have to configure the services module on hosts (preferably within a group).

The DNS server is configured with the services.server.dns parameter, which can be a boolean value or a dictionary with these parameters:

  • forwarder.ipv4 and forwarder.ipv6 (address or list of addresses): upstream DNS servers used for name resolution of domains other than services.dns.domain.