1、創建最簡單的DNS服務器場景圖
2、拉取鏡像
sudo docker pull jpillora/dnsmasq
3、按照如下命令生成topo結構
sudo ovs-vsctl add-br s1
sudo docker run -itd --network=none -v /home/light-travelling/resolv.conf:/etc/resolv.conf --name=h1 --privileged=true ubuntu:4
sudo docker run -itd --network=none -v /home/light-travelling/resolv.conf:/etc/resolv.conf --name=h2 --privileged=true ubuntu:4
sudo docker run \
--network=none \
--name dnsServer \
-d \
-v /opt/dnsmasq.conf:/etc/dnsmasq.conf \
--log-opt "max-size=100m" \
--restart always \
jpillora/dnsmasq
sudo ovs-docker add-port s1 eth1 h1 --ipaddress=192.168.1.1/24
sudo ovs-docker add-port s1 eth1 h2 --ipaddress=192.168.1.2/24
sudo ovs-docker add-port s1 eth1 dnsServer --ipaddress=192.168.1.254/24
具體的/home/light-travelling/resolv.conf 與 /opt/dnsmasq.conf文件內容如下:
/home/light-travelling/resolv.conf (h1 與 h2上)
nameserver 127.0.0.1 [必填]
nameserver 192.168.1.254 [服務器地址]
/opt/dnsmasq.conf (dnsServer服務器上)
#dns解析日誌
log-queries
#定義主機與ip映射
address=/h1/192.168.1.1
address=/h2/192.168.1.2
4、測試是否成功,以h1 ping h2爲例: