失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > virtualbox虚拟机--虚拟机的网络

virtualbox虚拟机--虚拟机的网络

时间:2020-02-01 22:20:11

相关推荐

virtualbox虚拟机--虚拟机的网络

今天要测试IP多宿主(ip multihoming),即host和guest的两个网卡分别接,host ping guest的ipv6不通。解决过程如下:

命令输出:

# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWNlink/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:33:7e:04 brd ff:ff:ff:ff:ff:ffinet 172.18.34.202/26 brd 172.18.34.255 scope global dynamic eth0valid_lft 172228sec preferred_lft 172228secinet6 fe80::a00:27ff:fe33:7e04/64 scope link tentative dadfailedvalid_lft forever preferred_lft forever3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:53:77:09 brd ff:ff:ff:ff:ff:ffinet 192.168.57.12/24 brd 192.168.57.255 scope global eth1valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe53:7709/64 scope link tentative dadfailedvalid_lft forever preferred_lft forever

看到tentative dadfailed, 原来dad的意思是Duplicate Address Detection,默认值是1也就是拒绝DAD。见: /linux//09/27/ipv6-dadfailed-problem.html

执行完发现确实是:

# sysctl -a | grep accept_dadnet.ipv6.conf.all.accept_dad = 1net.ipv6.conf.default.accept_dad = 1net.ipv6.conf.eth0.accept_dad = 1net.ipv6.conf.eth1.accept_dad = 1net.ipv6.conf.lo.accept_dad = -1

将用于host和guest通信的(HOST-ONLY)接口accept_dad设置成0,并重启网络服务:

sysctl -w net.ipv6.conf.eth1.accept_dad=0sysctl -w net.ipv6.conf.eth2.accept_dad=0service network restart

打印网络接口信息可以看到eth2和eth3的tentative dad消失:

# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWNlink/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:33:7e:04 brd ff:ff:ff:ff:ff:ffinet 172.18.34.202/26 brd 172.18.34.255 scope global dynamic eth0valid_lft 172803sec preferred_lft 172803secinet6 fe80::a00:27ff:fe33:7e04/64 scope link tentative dadfailedvalid_lft forever preferred_lft forever3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:53:77:09 brd ff:ff:ff:ff:ff:ffinet 192.168.57.12/24 brd 192.168.57.255 scope global eth1valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fe53:7709/64 scope link 注意到tentative dadfailed没有了。valid_lft forever preferred_lft forever

从host ping guest,首先通过ipconfig查看virtualbox的虚拟网卡VirtualBox Host-Only Network #2和VirtualBox Host-Only Network的IPV6地址后面的接口标号(百分号后面)。因为我的guest网卡配置这两个host的虚拟网卡分别对应eth1和eth2(与virtualbox的配置界面中mac地址对应。eth0做网桥用),所以结果:

ping ipv6_address_eth1%15

ping ipv6_address_eth2%16

如果觉得《virtualbox虚拟机--虚拟机的网络》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。