Linux中高级网络配置(链路聚合BOND&TEAM、桥接)

本文介绍了Linux中如何配置BOND和TEAM以实现网卡绑定,包括不同模式的解释,如mode0、mode1、mode6,以及两种配置方式:命令行和编辑配置文件。BOND提供了冗余和带宽扩容,而TEAM是CentOS7后的新型网络组,支持更多模式和动态配置。同时,文章还提及了桥接的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BOND&TEAM

让Linux内核支持网卡绑定驱动。常见的网卡绑定驱动有三种模式——mode0、mode1、mode6。
mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地网卡相连的交换机设备上进行端口聚合来支持绑定技术。
mode1(平衡备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。
mode6(平衡负载模式):平时两块网卡工作,且自动备援,无需交换机设备提供辅助支持。

BOND:

网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡。在应用部署中是一种常用的技术。bond不支持负载均衡。

以命令方式进行配置
命令后面没有解释的会在图片中详细解释其参数代表的含义
[root@localhost ~]# ifconfig	查看也没有以及配置的网卡有的话删除
[root@localhost ~]# nm-connection-editor	以图形界面删除,或者/etc/sysconfig/network-scripts/删除其文件
[root@localhost ~]# nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.160/24
[root@localhost ~]# watch -n 1 cat /proc/net/bonding/bond0		监控命令
[root@localhost ~]# nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0
[root@localhost ~]# nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0
[root@localhost ~]# ifconfig eth0 down		后面这三条命令为测试命令
[root@localhost ~]# ifconfig eth1 down		控制变量法测试
[root@localhost ~]# ifconfig eth1 up
这里介绍以下nmcli 以及nmcli控制 NetworkManager
Red Hat Enterprise Linux 7 与 CentOS 7 中默认的网络服务由 NetworkManager 提供,这是动态控制及配置网络的守护进程,它用于保持当前网络设备及连接处于工作状态,同时也支持传统的 ifcfg 类型的配置文件。

 NetworkManager 可以用于以下类型的连接:Ethernet,VLANS,Bridges,Bonds,Teams,Wi-Fi,mobile boradband(如移动3G)以及 IP-over-InfiniBand。针对与这些网络类型,NetworkManager 可以配置他们的网络别名,IP 地址,静态路由,DNS,VPN连接以及很多其它的特殊参数。

 可以用命令行工具 nmcli 来控制 NetworkManager。

 在CentOS / RHEL 7中网络管理命令行工具,也叫nmcli。经常使用ifconfig的用户应该在CentOS 7中避免使用ifconfig了。nmcli的功能要强大、复杂的多。

地址配置工具:nmcli

nmcli – command-line tool for controlling NetworkManage
### Linux 系统中用于网络配置的所有命令列表 以下是 Linux 系统中常用的网络配置相关命令,涵盖网络状态查询、网卡配置、路由设置、DNS 配置等多个方面: #### 一、网络状态查询 1. **`ifconfig`** 用于查看或配置网络接口的状态,包括 IP 地址、子网掩码等信息。可以临时修改网卡的 IP 地址子网掩码[^3]。 ```bash ifconfig eth0 ``` 2. **`ip`** 替代 `ifconfig` 的现代工具,功能更强大且支持 IPv6。可用于显示或配置网络设备、地址、路由等信息[^3]。 ```bash ip addr show ip route show ``` 3. **`netstat`** 显示网络连接、路由表、接口统计信息等内容。常用选项包括 `-tuln` 查看监听端口等。 ```bash netstat -tuln ``` 4. **`ss`** 替代 `netstat` 的工具,提供更快的性能更丰富的功能。可以查看套接字统计信息[^3]。 ```bash ss -tuln ``` 5. **`nmcli`** NetworkManager 的命令行工具,用于管理网络连接,支持有线、无线移动网络的配置。 ```bash nmcli device status ``` 6. **`ping`** 测试主机之间的连通性,发送 ICMP 回显请求并接收响应[^2]。 ```bash ping -c 4 example.com ``` 7. **`traceroute`** 显示数据包到达目标主机所经过的路由节点[^2]。 ```bash traceroute example.com ``` 8. **`arp`** 显示或操作 ARP 缓存中的条目,用于查看局域网内 MAC 地址与 IP 地址的映射关系[^3]。 ```bash arp -a ``` 9. **`route`** 显示或操作内核路由表,用于配置静态路由。 ```bash route -n ``` #### 二、网卡配置 1. **`ifup` `ifdown`** 启用或禁用指定的网络接口。 ```bash ifup eth0 ifdown eth0 ``` 2. **`ethtool`** 显示或更改以太网设备的设置,如速度、双工模式等。 ```bash ethtool eth0 ``` #### 三、DNS 配置 1. **`dig`** 查询 DNS 服务器以获取域名解析信息[^3]。 ```bash dig example.com ``` 2. **`nslookup`** 查询 DNS 服务器以获取域名对应的 IP 地址。 ```bash nslookup example.com ``` 3. **`host`** 简单的 DNS 查询工具,用于将主机名解析为 IP 地址或反之[^3]。 ```bash host example.com ``` #### 四、网络文件配置 1. **`/etc/hosts`** 配置本地主机名解析规则,优先于 DNS 解析。 ```bash cat /etc/hosts ``` 2. **`/etc/resolv.conf`** 配置 DNS 服务器地址,用于域名解析[^3]。 ```bash cat /etc/resolv.conf ``` 3. **`/etc/network/interfaces`**(Debian/Ubuntu) 配置网络接口的静态或动态 IP 地址。 ```bash cat /etc/network/interfaces ``` 4. **`/etc/sysconfig/network-scripts/ifcfg-eth0`**(Red Hat/CentOS) 配置网卡的 IP 地址、子网掩码、网关等信息。 ```bash cat /etc/sysconfig/network-scripts/ifcfg-eth0 ``` #### 五、高级网络配置 1. **`bonding`** 配置多网卡绑定(Bonding),提高带宽或实现冗余[^3]。 ```bash cat /proc/net/bonding/bond0 ``` 2. **`bridge-utils`** 配置网桥,用于虚拟化环境中的网络桥接。 ```bash brctl show ``` 3. **`teamd`** 替代传统 Bonding 的工具,提供更灵活的网络团队配置[^3]。 ```bash teamdctl team0 state ``` #### 六、系统监控工具 1. **`glances`** 实时监控系统资源使用情况,包括 CPU、内存、网络等信息[^4]。 ```bash glances -b ``` 2. **`vmstat`** 显示虚拟内存统计信息,包括 CPU 使用率、内存使用情况等[^4]。 ```bash vmstat -s ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值