The service node includes the functionality of a simple Domain Name Server (DNS), that a simulated client can use to translate a host/domain name into an IP address and vice versa. The DNS service is based on the same host table as the DHCP service, and only answers requests for A and PTR records.
For entries in the table that will only be used to answer DNS requests, and not
for DHCP, the MAC address can be left out.
The <service_node_comp>.add-host command can be used to add table
entries, and the <service_node_comp>.list-host-info command prints
the current table. By default, all host entries will use
the network.sim domain.
simics> sn0.add-host 10.10.0.1 donut Adding host info for IP 10.10.0.1: donut.network.sim simics> sn0.add-host 10.11.0.1 foo other.domain Adding host info for IP 10.11.0.1: foo.other.domain simics> sn0.list-host-info IP name.domain MAC ------------------------------------------------- 10.10.0.0 simics0.network.sim 20:20:20:20:20:00 10.10.0.1 donut.network.sim 10:10:10:10:10:01 10.11.0.1 foo.other.domain
For dynamic DHCP addresses, a DNS name will be added for the new IP number, so that any of these addresses can be found by the DNS service. When connected to a real network, the DNS service can do external lookups for names it does not recognize.