搭建路由环境
搭建路由环境
部署路由环境的拓扑结构
由3个路由器R1,R2,R3和2个主机A,B构成的路由结构如上图。其中,每个路由器都有两个网卡eth0和eth1。网络IP地址分为4个网段,默认网络IP为16位。
在虚拟机上配置网络地址
在虚拟机中添加网络:
主机A与R1的eth0在网络11。
同上将R1的eth1与R2的eth0设置在网络12,R2的eth1与R3的eth0在网络13,R3的eth1与主机B在网络14。
修改网卡名称
Vim /wtc/udev/rules.d/70-persistent-net.rules
将多余的网卡记录删除,按照MAC地址设置网卡名称
查看网卡
dmesg |grep -i eth
ethtool -i eth0
卸载网卡驱动
modprobe -r e1000(驱动名称)
rmmod e1000(驱动名称)
装载网卡驱动
modprobe e1000(驱动名称)
指定网络IP地址
vim /etc/sysconfig/network-scripts/ifcfg-网卡名称
#编辑配置文件,添加修改以下内容
DEVICE=eth0 #设备名称
BOOTPROTO=static|none #启用静态IP地址 dhcp自动获取IP
ONBOOT=yes #开启自动启用网络连接
IPADDR=10.0.1.100 #设置IP地址
NETMASK=255.255.0.0 #设置子网掩码 PREFIX=16
GATEWAY=10.0.1.200 #设置网关 下一个路由器临近路由器的接口
DNS1=8.8.8.8 #设置主DNS
DNS2=8.8.4.4 #设置备DNS
IPV6INIT=no #禁止IPV6
将虚拟机的网络IP手动设置为所需要的IP
因为我是直接克隆的虚拟机,MAC地址也需要手动改或者删除MAC地址行
重新启动服务 service nerwork restart
使用ip a 命令查看网卡状态
所有主机路由器设置完成后,使用ping命令查看网络连接
如图 主机A与路由器R1连接成功。
网络连接成功后,给每个路由器添加路由信息
每个路由器中都有一个路由表:
直连网络路由信息自动生成,不需要手动添加
R1的路由表
目标网络的网络ID |
子网掩码 |
接口 |
网关 |
10.3.0.0 |
16 |
eth1 |
10.2.0.201 |
10.4.0.0 |
16 |
eth1 |
10.2.0.201 |
路由管理命令:
查看 route -n
添加 route add host 仅主机路由 net 网络路由jinzhu
删除 route del
route add -net 10.3.0.0/16 gw 10.2.0.201 dev eth1
配置完成 R1与R2间的网络连接成功
R2的路由表:
目标网络的网络ID |
子网掩码 |
接口 |
网关 |
10.1.0.0 |
16 |
eth0 |
10.2.0.200 |
10.4.0.0 |
16 |
Eth1 |
10.3.0.201 |
双向网络连接成功
R3的路由表:
目标网络的网络ID |
子网掩码 |
接口 |
网关 |
10.1.0.0 |
16 |
eth0 |
10.3.0.200 |
10.2.0.0 |
16 |
eth0 |
10.3.0.200 |
此时的主机A并不能与R2连接,因为,在用主机模拟路由器的时候,主机在收到目标不是自己的数据包是,不回转发出去,而是直接丢掉。
可以看出此时R1只接收包,不发出包
需要开启路由转发特性
将只改为1 开启
此时主机A与R2的网络连接仍然不成功
将路由器R1,R2,R3的防火墙关闭
查看防火墙 iptables -vnL
关闭防火墙 iptables -F
查看网络连接:
整个路由网络连接成功!
这个路由是临时的,如果要存盘,就要写在文件中。
/etc/sysconfig/network-scripts/ifcfg-IFACE 文件需要自己创建
注意:需service network restart生效
两种风格:
(1) TARGET via GW
如:10.0.0.0/8 via 172.16.0.1
(2) 每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
实验总结:
虽然这只是一个很小的实验,但是还是出现了很多错误,花费了很多时间。试验中涉及了前面学习的一些零散的知识,才发现已经忘记了很多。只能通过查前面的笔记,看视频回忆起来。虽然磕磕绊绊,但是总算完成了,还是很有成就感的!再接再厉,开始下一个实验!