linux 网路管理路由和team网络组

如何实现把linux当路由器来使用,实现不同网段之间的通信访问,这就是今天所要实现的路由配置

 

环境准备:4台虚拟机,两台中间两台作为路由器来使用(每天主机两块网卡),其他两台作为终端主机,目的是让不同网段的两台主机之间互相访问(这里在vmware里面做的实验,所以网卡的类型都设置为桥接)

 

拓扑图:

1.jpg

 

步骤一:将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

 2.jpg

查看状态

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网络组

原创文章,作者:yaobinbin,如若转载,请注明出处:http://www.178linux.com/74970

赞 (0)
yaobinbinyaobinbin
上一篇 2017-05-07 22:09
下一篇 2017-05-07 22:49

相关推荐

  • Mysql 多表联合查询效率分析及优化

    1. 多表连接类型 1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用','  如:  SELECT * FROM table1 CROSS JOIN table2  &nb…

    Linux干货 2015-04-13
  • 计算机的组成和其功能

    图:计算机组成架构 计算机由硬件和软件组成 硬件部分: CPU:又称中央处理器,整个系统最高执行单元,执行各种运算,控制电脑自动协调地完成各种操作。 主板:它把计算机的各个部件紧密的连接在一起,各个部件通过主板进行数据传输,计算机重要的“交通枢纽”都在主板上,他的工作稳定性影响整机的工作稳定性。因同CPU的插脚和性能不同,所以针对不同的CPU也有不同的主板。…

    Linux干货 2016-08-08
  • OpenSSH的应用和利用OpenSSL创建私有CA签证给httpd服务器开起https

    一、OpenSSH     OpenSSH与SSH协议是远程登录的首选连接工具。它加密所有流量,以消除窃听,连接劫持和其它攻击。OpenSSH常常被误认以为与OpenSSL有关系,但实际上这两个项目的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。  &…

    Linux干货 2016-04-24
  • centos7 搭建SVN服务器

    运维常见的工作就是日常软件的安装和维护,SVN虽然被Git侵占了市场份额,但是仍然是高效简捷的源码管理工具。从日常软件的安装部署开始,熟悉一些Linux的常用命令。

    Linux干货 2018-03-26
  • sed基础

    sed 是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space ),接着用sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed 主要用来自动编辑一个或多个文件, 简化对文件的反复操…

    Linux干货 2017-05-01
  • N23-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# last -1 | head -1 3、取出当前系统上被用户当…

    Linux干货 2016-12-05