Vbox中多台虚拟机搭建简单子网

一、目标拓扑结构:

要使192.168.31.1和192.168.32.1互相ping通。

 

二、步骤及问题:

1.路由器配置

SEED_Router配置IP并开启路由转发协议:

ifconfig eth1 192.168.31.2

ifconfig eth2 192.168.32.2

echo "1" > /proc/sys/net/ipv4/ip_forward

 

2.client配置

SEED_Client配置IP并设置默认网关:

ifconfig eth1 192.168.31.1

# 不用route add default gw 192.168.31.2

 

3.server配置

SEED_Server配置IP并设置默认网关:

ifconfig eth2 192.168.32.1

# route add default gw 192.168.32.2

 

测试配置结果-网络连通性时发现192.168.31.1能ping通192.168.32.1,但后者ping不通前者。

 

三、解决方案:

分别给client、server、Router手动配置路由表

client:

ip route add 192.168.32.0/24 via 192.168.31.2

 

server:

ip route add 192.168.31.0/24 via 192.168.32.2

 

Router:

ip route del192.168.32.0/24

ip route add 192.168.32.0/24 via 192.168.32.2

ip route del192.168.31.0/24

ip route add 192.168.31.0/24 via 192.168.31.2

 

然后再ping就ok了:

 

 

 

四、分析:

手动配置路由表之前其实各主机及Router都有相应地路由表项的,

但跟手动配置的表项信息不完全相同,然后就莫名其妙地只能单向转发。

[01/04/2019 02:28] root@ubuntu:/home/seed# ip route
169.254.0.0/16 dev eth0  proto kernel  scope link  src 169.254.8.240  metric 1 
192.168.31.0/24 dev eth1  proto kernel  scope link  src 192.168.31.2 
192.168.32.0/24 dev eth2  proto kernel  scope link  src 192.168.32.2 
224.0.0.0/4 dev eth0  proto static 

手动删除后重新配置

[01/04/2019 02:30] root@ubuntu:/home/seed# ip route del 192.168.31.0/24
[01/04/2019 02:32] root@ubuntu:/home/seed# ip route del 192.168.32.0/24
[01/04/2019 02:32] root@ubuntu:/home/seed# ip route add 192.168.31.0/24 via 192.168.31.2
[01/04/2019 02:33] root@ubuntu:/home/seed# ip route add 192.168.32.0/24 via 192.168.32.2

 

之后有时间再具体研究下自动生成的路由表项有什么区别。。。。

 

posted @ 2019-01-04 17:53  汉尼拔草  阅读(714)  评论(0编辑  收藏  举报