如何实现把linux当路由器来使用,实现不同网段之间的通信访问,这就是今天所要实现的路由配置
环境准备:4台虚拟机,两台中间两台作为路由器来使用(每天主机两块网卡),其他两台作为终端主机,目的是让不同网段的两台主机之间互相访问(这里在vmware里面做的实验,所以网卡的类型都设置为桥接)
拓扑图:
步骤一:将A、D两台主机配置网关(主机路由),使其两台主机能够与B、C路由器中的主机互相通信
A主机地址配置
[root@xiao ~]# ip addr add 10.0.0.1/8 dev eth0
D主机地址配置
[root@xiao ~]# ip addr add 192.168.0.1/24 dev eth0
至此A、D两台主机的地址就配置完成了,但是此时主机A和主机D之间是不能通信的,因为从主机A到主机D不在同一个网段中,A访问D需要经过C路由器,而在B路由器上没有添加路由能够到达C路由器的网络中去,这时候要在B主机加条路由使得B网络中的主机能够到达C网络,站在B路由器的角度,路由就应该是经过B路由器的1接口指向C主机的1接口地址(临近路由器的近端接口地址)使其A和D能够通信,书写路由规则,B路由器要想访问D网络,B路由器当中的主机想要到达C网络,就必须,为了避免外界因素的影响,需要将主机A、D的防火墙关掉
iptables -F
B路由器路由配置
[root@xiao ~]#route add -net 192.168.0.0/24 gw 172.48.0.2 dev eth1
C 主机地址配置
[root@xiao ~]#route add -net 10.0.0.0/8 gw 172.48.0.1 dev eth1
启用路由功能
最后两台路由器需要开启转发的功能,才能实现A主机与D主机的通信,所以需要开始ip转发的功能,这里我们临时打开转发功能
[root@xiao ~]#echo “1” > /proc/sys/net/ipv4/ipv4_forward=1
测试是否主机间能够通信
使用A主机来ping A主机的网关,是否能通,如果能通,在去C主机的1接口的地址,如果能通,最后pingD主机,相反由D主机来ping向A主机,如果当中某个地方不通,就需要排错了,如果A主机ping它的网关不通,那么就应该是路由条目写错了,检查重新写一个路由条目,如果A到B是通的,但A主机ping C主机的1口的地址不通,那么就是B路由器和C路由器的路由条目有问题,依次这样排错,知道网络通为止。
总结:在网络中,各个路由器的路由条目应该是出去的接口指向临近端路由器接口的ip地址,其次,路由器之间应该是一去一回的,你能访问其他的网络,那其他的网络也能访问你
网络组的实现
网络组介绍
网络组:是将多个网卡组合在一起的方法,从而实现容错和提高吞吐量,网络组不同于旧版bonding技术,提供了更好的性能和扩展性,网络组由内核驱动和teamd守护进程实现
工作模式
broadcast 广播
roundrobin 轮巡
active-backup 主备模式
loadbalance 负载均衡
lacp(implemments the 802.3ad Link Aggregatin Control)动态链路聚合
注意:除了主备模式外,其他几种模式需要在交换机当中设置相关的属性功能,才能启用网络的几种工作模式。
环境准备:一台CentOS7主机,需要两块网卡,这里我给大家配置的是主备模式,保证系统当中装了nmcli这个网络管理工具,和teamdctl这个工具,如果没有安装使用yum安装team这个包,即可
创建网络组接口
[root@xiao ~]# nmcli connection add con-name team0 type team ifname team0 config '{ "runner": {"name": "activebackup"}}'
如果觉得书写"runner": {"name": "activebackup"}这段有困难时,可以man teamd.conf然后这段复制即可
为网络组接口配置ip和设置为静态属性
[root@xiao ~]# nmcli connection modify team0 ipv4.addresses 10.1.252.150
[root@xiao ~]# nmcli connection modify team0 ipv4.method manual
将两个网卡加进网络组当中去
[root@xiao ~]# nmcli connection add con-name team0-1 type team-slave ifname eno16777736 master team0
[root@xiao ~]# nmcli connection add con-name team0-1 type team-slave ifname eno33554984 master team0
启用网络组
[root@xiao ~]# nmcli connection up team0
[root@xiao ~]# nmcli connection up team0-1
[root@xiao ~]# nmcli connection up team0-2
重启网络服务
systemctl restart network
查看状态
setup:
runner: activebackup
ports:
eno16777736
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
eno33554984
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 0
runner:
active port: eno16777736
当我down掉一块网卡的时候,备用的网卡就会顶上去继续工作
setup:
runner: activebackup
ports:
eno16777736
link watches:
link summary: down
instance[link_watch_0]:
name: ethtool
link: down
down count: 2
eno33554984
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
down count: 2
runner:
active port: eno33554984
测试
用其他主机来ping网络组的IP地址down掉其中一块网卡,看查看网路组的状态,是否网卡已经切换,看是否还能继续ping网络组
原创文章,作者:fszxxxks,如若转载,请注明出处:http://www.178linux.com/44515
评论列表(1条)
文章实践性较强,对于理论部分过于简单了,例如bond的三种模式需要详细的给予解释,同时对于实验效果通过图片来展示是最直观的哦。