路由:一个设备从接口(网卡)上接收到数据包,依据设备所使用的某些规则,将数据包转发到其他接口的过程。

本项目有四台虚拟机构成,三台处于不太的网段,一台设置为路由器,实现数据转发功能。
架构图

接入虚拟交换机

根据架构图,创建出四台虚拟机,并且分别接入到对应的虚拟交换机中。
交换机

初步设置ip

将三台虚拟机设置成相对应的IP,同时注销掉网关设置。还需要注意子网掩码方面的设置(本次实验皆为C类IP地址,使用默认子网掩码)。例如server1虚拟机的配置文件和路由表信息如下:
server1
由server1第一次ping主机server3:
server1
原因:server1主机的route表中无此网段的记录,提示目标不可达,由自己提示

在server1主机添加一条路由信息:route add -net 192.168.60.0 netmask 255.255.255.0 gw 192.168.1.5
server1
数据包已经发出,但是一直无返回信息,原因是数据包一直往server2主机的192.168.1.5这个网卡发送信息,但是对方接收到数据包后发送目标地址并不是自己,因此一直把数据包丢掉。

打开server2主机的核心路由转发功能
vim /etc/sysctl.conf 在最后一行添加:net.ipv4.ip_forward = 1
vim信息
验证是否成功:在bash中执行: sysctl -p 会出现 net.ipv4.ip_forward = 1 这个信息。

在server1中再次ping和主机server3统一网段的地址,但是该主机不存在:
vim信息
会由主机server2提示目标主机不可达

在server3主机添加一条路由信息:route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.60.4
可以发现两台主机ping通了!!!!!!

意外总结

在server2添加一条默认网关(route add default gw 192.168.1.2)
|
server1通过把网关指向server2可以上网
server3、server4通过把网关指向server2不可以上网
|
原因:vmnet8号交换只会把192.168.1.0/24网段的IP通过NAT技术在出栈时把IP换为win10IP,数据包回来时再换回原IP地址
而server3、server4主机不属于这一网段

× 请我吃糖~
打赏二维码