Linux /Centos 7 网络配置与双网卡绑定、网桥

网络配置


视频地址 哔哩哔哩

1:什么是ip?

ip是用来给主机的编号,访问到这个主机的凭据

ip地址在同一个网路里面都是唯一的存在,如果不唯一,就会发生ip冲突,造成网络无法访问

ip地址由网络部分和主机部分提供,掩码来决定整个网络的大小

255.255.255.0 24为掩码

掩码用来表示子网可以容纳多少主机

网关:子网对外访问的出入口

DNS:名称服务器,将域名解析成ip

centos 7解析文件存放位置

[root@Centos-A1 ~]# cat /etc/resolv.conf 

2:网络设备

虚拟网络设备

物理网络设备

  • RHEL 7存在三张网卡

    • ens33(名称不唯一) 是真实的物理网卡

    • lo,本地环回接口,ip地址永远唯一,且为127.0.0.1,通常给本地应用程序调用

    • virbr0,kvm虚拟化的虚拟网卡,一般不用配置

3:网络接口的命名

  • 传统上,Linux的网络接口依次为eth0,eth1,eth2……
  • RHEL 7以上的版本的默认命名是基于固件的基本上分配的固定名称,使用的是udev规则,内核识别的网卡依旧为eth 0,如ens33
    • 接口类型
      • 以太网有线接口为en
      • 无线局域网接口为wl
      • 无线广域网接口为ww
    • 适配器类型
      • s为热插拔插槽
      • o为板载
      • p代表对pcl类型的支持
    • 数字N代表索引,ID或者端口
  • 如果固定的密码名称不能确定,传统的名称如ethn将被使用

在有些特殊场景下,需要将服务器的网卡统一,便于管理,因此需要还原ens网卡命名规则

root@Centos-A1 ~]# cp -p /etc/default/grub /etc/default/grub.bak   #更改文件之前备份
[root@locathost ~]#vim /etc/default/grub 
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet (net.ifnames=0)"
 //(里面为添加的参数)
[root@locathost ~]# grub2-mkconfig -o /etc/grub2.cfg # 内核重新读取配置文件
[root@locathost ~]# reboot
重启后ifconfig查看网卡,即可看到网卡变成eth0

eth0

然后重启即可

4:vm虚拟机三种网络类型简介

a.仅主机模式(VMnet1)

虚拟机之间可以互相通信,但是不能访问外网(虚拟机没有上行链路)Vmnet1,保证和主机之间的通信

b.NAT(VMnet8)

网络地址转换,将虚拟交换机内部的虚拟机地址转换成可以访问外部网络的地址进行网络访问

其中虚拟机内部网络也存在一个网段

NAT模式下,会有地址会被分配作为网关地址。

优势:节约资源,保护内网设备

如果配置的ip地址不为虚拟机本身内部网络,则需要在虚拟网络编辑器处修改子网范围与网关

c.桥接模式(物理网卡)

虚拟机直连外部网络,供外部网络访问

5:网络信息的查看

[root@Centos-A1 ~]# ifconfig  #查看服务器的网络信息,其中eth n表示物理网卡,是访问外界的网卡,lo为本地环回网卡,virbr0为kvm虚拟化的网卡
ns33: flags=4163<UP(网卡状态正常),BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.196.137(Ip地址)  netmask 255.255.255.0(子网掩码)  broadcast 192.168.196.255
        inet6 fe80::aa89:e32e:12ea:34c5(ipv6地址)  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:5e:2e:6f  txqueuelen 1000  (Ethernet)(千兆以太网)
        RX packets 424  bytes 42291 (41.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 253  bytes 24453 (23.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0 #发送接受的数据包
[root@Centos-A1 ~]# ip address  #查看所有ip
[root@Centos-A1 ~]# route -n  #查看路由信息
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.196.2   0.0.0.0         UG    100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.196.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
# 0.0.0.0 表示通配所有
cat /etc/resolv.conf  查看DNS相关,修改文件仅临时有效,重启失效
[root@Centos-A1 ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search localdomain
nameserver 192.168.196.2

6:网络的配置

1)ifconfig
[root@Centos-A1 ~]# ifconfig  #查看所有激活的网卡
[root@Centos-A1 ~]# ifconfig -a  #查看所有网卡,包含未激活的
[root@Centos-A1 ~]# ifconfig ens33 up/down  #激活/禁用网卡
[root@Centos-A1 ~]# ifconfig ens33 192.168.1.1/24  #设置ip地址与子网掩码,仅临时有效,重启失效,一般用于测试
2)ip
  • ip link 管理设备

    • [root@Centos-A1 ~]# ip link [show] #查看设备信息
      [root@Centos-A1 ~]# ip link set ens33 up/down #设置网卡的激活与禁用
      
  • ip address

    • [root@Centos-A1 ~]# ip address [show] #查看网络地址
      [root@Centos-A1 ~]# ip address add 192.168.196.200/24 dev ens33  #添加第个ip地址
      [root@Centos-A1 ~]# ip address del 192.168.196.200/24 dev ens33  #删除第二个ip地址
      
  • ip route 管理路由表

    • [root@Centos-A1 ~]# ip route  #查看路由表 
      192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 
      [root@Centos-A1 ~]# ip route add 172.25.254.110 via 192.168.196.2  #添加路由,ip route add ip地址[/掩码] via 网关
      [root@Centos-A1 ~]# ip route del 172.25.254.110 #删除路由
      
3)NetworkManager
a.nmcli 查看网络配置
[root@Centos-A1 ~]# nmtui  #图形化配置界面
[root@Centos-A1 ~]# nmcli  选项 参数  #命令行管理工具
[root@Centos-A1 ~]# nmcli device show    #查看当前设备
[root@Centos-A1 ~]# nmcli device status  #查看设备状态
[root@Centos-A1 ~]# nmcli connection show  #查看网卡配置文件等信息
[root@Centos-A1 ~]# nmcli connection delete ens33[UUID也可以删除]  #删除网卡配置文件,也可以通过UUID删除
成功删除连接 "ens33" (0631f08c-f8b7-4fa2-b387-b77bdfa462dd)[root@Centos-A1 ~]# nmcli device connect ens33   #连接网络,如果设备文件存在则激活,不存在则创建并激活
成功用 "ens33bcd74651-785a-376b-833c-eae36a896ce1" 激活了设备 ""
b.nmcli配置网络
  1. 首先查看是否存在配置文件

    • [root@Centos-A1 ~]# nmcli connection shownmcli connection show
      
  2. 如果存在配置文件

    • nmcli connection modify修改配置文件
  3. 不存在配置文件

    • nmcli connection add 添加配置文件
  4. 配置完成后激活配置文件

    • nmcli connection up 配置文件名
[root@Centos-A1 ~]# nmcli connection add type ethernet ifname ens33 con-name ens33 ipv4.method manual ipv4.addresses 192.168.196.200/24 ipv4.gateway 192.168.196.2 ipv4.dns 223.5.5.5 autoconnect yes  #添加配置文件
[root@Centos-A1 ~]# nmcli connection up ens33  #激活网卡
配置含义
type ethernet类型为以太网
ifname ens160网卡名称/设备名
con-name ens160配置文件名称。建议与网卡一致
ipv4.addresses 192.168.196.128/24ip地址.掩码
ipv4.gateway 192.168.196.2网关地址
ipv4.dns 223.3.3.3DNS地址
ipv4.method manual手动模式
autoconnect yes开机启动
[root@Centos-A1 ~]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 192.168.196.210/24  #修改网卡配置文件
[root@Centos-A1 ~]# nmcli connection up ens33 
[root@Centos-A1 ~]# nmcli connection modify ens33 ipv4.method auto autoconnect yes  #设置DNCP自动获取网络
[root@Centos-A1 ~]# nmcli connection up ens33 
[root@Centos-A1 ~]# nmcli connection modify ens33 ipv4.method manual +ipv4.addresses 192.168.196.100/24  #添加第二个ip地址
[root@Centos-A1 ~]# nmcli connection up ens33 
[root@Centos-A1 ~]# ip address  #验证
[root@Centos-A1 ~]# nmcli connection modify ens33 ipv4.method manual -ipv4.addresses 192.168.196.100/24 #删除一个ip地址
[root@Centos-A1 ~]# nmcli connection up ens33 
[root@Centos-A1 ~]# ip addr

如果手动修改了ifconfig-ens160文件

[root@locathost ~]# nmcli connection reload  //首先需要将硬盘上的文件读取到系统配置中
[root@locathost ~]# nmcli connection up ens160 //激活网卡

7:双网卡绑定与桥接

1)双网卡绑定

bond级别bond名称bond特点对交换机的要求
0round-robin按照设备顺序依次传输数据包,提供负载均衡和容错能录需要配置trunking
1active-backup只有一个设备处理数据,当发生故障时,则会启用备份,仅提供容错能力不需要配置
2load-balancin(xor)根据MAC地址异或运算的结果来传输设备,提供负载均衡和容错能力交换机需要配置trunking
3fault-tolerance(broadcast)通过全部设备来传输所有数据,提供容错能力交换机需要配置trunking
4lacp通过创建聚合组来共享相同的传输速度,需要交换机也支持802.3ad模式,提供容错能力需要交换机支持802.3d、交换机需要配置
trunking
5transmit loadbalancing由负载最轻的网口发送,由当前使用的网口接收。提供负载均衡和容错能力。交换机不需要配置
6adaptive loadbalancing用负载最轻的网口进行发送和接收。提供负载均衡和容错能力。交换机不需要配置

双网卡绑定主要是为了保证业务能够正常运行,即当一块网卡down的时候,切换到另一块网卡(主备模式),保证业务运行

首先添加第二块网卡设备给虚拟机,编辑虚拟机设置–>添加–>网络适配器–>完成–>确定

两张网卡的模式保持一致,NAT或者仅主机模式都可以验证

双网卡绑定

[root@Centos-A1 ~]# ifconfig  #查看添加的网卡的设备名

查看网卡设备

查看配置文件,并删除需要双网卡绑定的两块设备的配置文件

[root@Centos-A1 ~]# nmcli connection show
NAME        UUID                                  TYPE      DEVICE 
有线连接 1  5d005beb-95f7-31e0-b445-6412592220a7  ethernet  ens36  
virbr0      9a986ed9-ea24-4571-ac27-2b6dc5324250  bridge    virbr0 
[root@Centos-A1 ~]# nmcli connection delete ens33 
成功删除连接 "ens33" (bd003090-bea5-4f16-8c80-6eb50336db06)[root@Centos-A1 ~]# nmcli connection delete 5d005beb-95f7-31e0-b445-6412592220a7 
成功删除连接 "有线连接 1" (5d005beb-95f7-31e0-b445-6412592220a7)
  • 创建虚拟接口

    [root@Centos-A1 ~]# nmcli connection add type bond ifname bond0 con-name bond0 mode active-backup miimon 1000
    连接 "bond0" (b70ed4cc-c233-42e8-840b-eb9d9eff7159) 已成功添加。
    #miimon 1000,表示每隔1000ms检查一下网络的连通性
    
  • 将两张物理网卡与虚拟网卡进行绑定

    root@Centos-A1 ~]# nmcli connection add type ethernet slave-type bond ifname ens33 con-name ens33 master bond0 
    连接 "ens33" (a45a9a27-f126-4465-8939-6b763d66d7e5) 已成功添加。
    [root@Centos-A1 ~]# nmcli connection add type ethernet slave-type bond ifname ens36 con-name ens36 master bond0 
    连接 "ens36" (6166c594-fb5f-49ea-8db8-d3c6beb1e51e) 已成功添加。
    

    查看配置文件

    [root@Centos-A1 ~]# nmcli connection show
    

查看配置文件

  • 配置bond0的相关地址

    [root@Centos-A1 ~]# nmcli connection modify bond0 ipv4.method manual ipv4.addresses 192.168.196.100/24 ipv4.gateway 192.168.196.2 ipv4.dns 223.5.5.5 autoconnect yes 
    [root@Centos-A1 ~]# nmcli connection up bond0  #激活bond0
    
  • 查看bond0的相关信息

    [root@Centos-A1 ~]# cat /proc/net/bonding/bond0 
    
  • 使用windows终端cmd 进行测试

    C:\Users\sweetheart>ping 192.168.196.100  -t
    

ping 测试

在虚拟机控制台右键,可移动设备,将两块网卡分别断开,可以查看到数据包有短暂的连通失败后又恢复正常,从而保障业务的正常运行

2)网桥

网桥即虚拟交换机

如果上面做了双网卡绑定的实验,建议删除配置后在进行网桥的配置

[root@Centos-A1 ~]# nmcli connection delete ens33
[root@Centos-A1 ~]# nmcli connection delete ens36
[root@Centos-A1 ~]# nmcli connection delete bond0
[root@Centos-A1 ~]# nmcli connection show  #再次查看配置
  • 创建网桥

    [root@Centos-A1 ~]# nmcli connection add type bridge ifname br0 con-name br0 autoconnect yes 
    
  • 绑定网桥

    [root@Centos-A1 ~]# nmcli connection add type ethernet slave-type bridge ifname ens33 con-name ens33 master br0 
    
  • 配置网桥地址并激活(一般不用配置,此处为了测试)

    [root@Centos-A1 ~]# nmcli connection modify br0 ipv4.method manual ipv4.addresses 192.168.196.200/24
    [root@Centos-A1 ~]# nmcli connection up br0 
    

    网桥生效需要一定的时间,如果没通请等待几分钟在进行测试

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值