#yyds干货盘点# 网络高级配置和多网卡绑定实现

Posted 王华_linux

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点# 网络高级配置和多网卡绑定实现相关的知识,希望对你有一定的参考价值。

1.网络基本配置文件 

/etc/sysconfig/network-scripts/ifcfg-IFACE

TYPE

接口类型;常见有的Ethernet, Bridge

NAME

此配置文件应用到的设备

DEVICE

设备名

HWADDR

对应的设备的MAC地址

UUID

设备的惟一标识

BOOTPROTO

激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp

IPADDR

指明IP地址

NETMASK

子网掩码,:255.255.255.0

PREFIX

网络ID的位数, :24

GATEWAY

默认网关

DNS1

第一个DNS服务器地址

DNS2

第二个DNS服务器地址

DOMAIN

主机不完整时,自动搜索的域名后缀

ONBOOT

在系统引导时是否激活此设备

USERCTL

普通用户是否可控制此设备


    PEERDNS

如果BOOTPROTO的值为“dhcp”YES将允许dhcp server分配的dns服务

器信息直接覆盖至/etc/resolv.conf文件,NO不允许修改resolv.conf

NM_CONTROLLED

NMNetworkManager的简写,此网卡是否接受NM控制

2.主机名的存放

#yyds干货盘点#

#yyds干货盘点#

[root@c7-147 ~]# cat /etc/sysconfig/network
# Created by anaconda
[root@c7-147 ~]#

3.路由相关的配置文件

#永久保存路由的记录

/etc/sysconfig/network-scripts/route-IFACE
两种风格:
(1) TARGET via GW
如:10.0.0.0/8 via 172.16.0.1

(2)每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW

4. 网卡别名

将多个IP地址绑定到一个NIC上

每个IP绑定到独立逻辑网卡,即网络别名,命名格式: ethX:Y,如:eth0:1 、eth0:2、eth0:3

范例:ifconfig命令

ifconfig eth0:0 192.168.1.100/24 up #配置IP且开启

ifconfig eth0:0 down

范例:ip 命令

ip addr add 172.16.1.1/16 dev eth0

ip addr add 172.16.1.2/16 dev eth0 label eth0:0

ip addr del 172.16.1.2/16 dev eth0 label eth0:0 ip addr flush dev eth0 label eth0:0

#永久保存一个地址在一张网卡上

[root@centos8 ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth0:1
DEVICE=eth0:1
IPADDR=10.0.0.100
PREFIX=8
------------------------
建议 CentOS 6 关闭 NetworkManager 服务
网卡别名必须使用静态地址

5.多网卡 bonding

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过 bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址

工作模式Bonding

共7种模式:0-6 Mode

Mode 0 (balance-rr): 轮询(Round-robin)策略,从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均衡和容错的能力

 Mode 1 (active-backup): 活动-备份(主备)策略,只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave.为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见

 Mode 3 (broadcast):广播策略,在所有的slave接口上传送所有的报文,提供容错

能力说明:

active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配置交换机以便整合链接。如:Cisco 交换机需要在模式 0、2 和 3 中使用 EtherChannel,但在模式4中需要 LACP和 EtherChannel

配置Bonding

/usr/share/doc/kernel-doc- version/Documentation/networking/bonding.txt 
https://www.kernel.org/doc/Documentation/networking/bonding.txt

设备的配置文件bonding创建

/etc/sysconfig/network-scripts/ifcfg-bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.0.0.100
PREFIX=8
#miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路
BONDING_OPTS="mode=1 miimon=100"

/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

#查看bond0状态:
/proc/net/bonding/bond0


#删除bond0
ifconfig bond0 down
rmmod bonding 或者modprobe -r bonding

#yyds干货盘点#

6. 网卡命名机制

1. 如果Firmware或Bios为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,如:eno1

2. 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,如:ens1

3. 如果硬件接口的物理位置信息可用,则根据此信息命名,如:enp2s0

4. 如果用户显式启动,也可根据MAC地址进行命名,如:enx2387a1dc56

5. 上述均不可用时,则使用

以上是关于#yyds干货盘点# 网络高级配置和多网卡绑定实现的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#Linux网络配置故障排除命令

#yyds干货盘点#Linux网络管理命令

#yyds干货盘点#网络配置

#yyds干货盘点#Ubuntu网络配置和故障排错工具详解

#yyds干货盘点# 在 VM 虚拟机中 Linux 动态网络配置

#yyds干货盘点#--k8s-网络模型