Linux系统网络配置与Bond多网卡绑定

news/2025/2/25 8:50:14/

目录

一、查看网络配置命令

1.1、ifconfig

1.2、ip

1.3、hostname

1.4、route

1.5、netstat

1.6、ss

1.7、ping

1.8、traceroute

1.9、nslookup

二、永久修改网络配置

2.1、网络接口配置文件

3.1、主机名配置文件

三、Bonding多网卡绑定

3.1、bondding工作模式

3.2、配置bond

3.2.1、添加网卡

3.2.2、新建bond配置文件

3.2.3、修改网卡配置文件

3.2.4、查看bond配置信息


一、查看网络配置命令

1.1、ifconfig

network interfaces configuring的所以写,其功能是显示或设置网络设备参数信息。

语法格式:ifconfig 参数 网卡名 动作

-a显示所有网卡状态-v显示执行过程详细信息
-s显示简短状态列表

 常用动作:

add设置网络设备的IP地址down

关闭指定的网络设备

del删除网络设备的IP地址up启动指定的网络设备

参考示例:

[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.153.23  netmask 255.255.255.0  broadcast 192.168.153.255inet6 fe80::23f7:fce:85f9:91c5  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:5d:4f:83  txqueuelen 1000  (Ethernet)RX packets 7088  bytes 576440 (562.9 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 5112  bytes 951309 (929.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 181  bytes 15441 (15.0 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 181  bytes 15441 (15.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@localhost ~]# ifconfig ens33 down            //关闭指定网卡
[root@localhost ~]# ifconfig ens33 up              //开启指定网卡
[root@localhost ~]# ifconfig ens33 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255            //配置IP地址
1.2、ip

功能是显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。

语法格式:ip 参数 对象

-V显示指令版本信息-s输出更详细的信息
-f强制使用指定的协议簇而不询问-4基于IPv4网络协议
-r不使用IP地址,而是域名-6基于IPv6网络协议

常用对象:

link数据链路层接口route路由表
addr网络层接口rule路由规则

 参考示例:

[root@localhost ~]# ip a                //addr的缩写,查看所有网络接口
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:5d:4f:83 brd ff:ff:ff:ff:ff:ffinet 192.168.153.23/24 brd 192.168.153.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet6 fe80::23f7:fce:85f9:91c5/64 scope link noprefixroute valid_lft forever preferred_lft forever
[root@localhost ~]# ip link              //显示网络设备运行状态
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000link/ether 00:0c:29:5d:4f:83 brd ff:ff:ff:ff:ff:ff
[root@localhost ~]# ip -s link list      //显示更加详细的设备信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00RX: bytes  packets  errors  dropped overrun mcast   18663      219      0       0       0       0       TX: bytes  packets  errors  dropped carrier collsns 18663      219      0       0       0       0       
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000link/ether 00:0c:29:5d:4f:83 brd ff:ff:ff:ff:ff:ffRX: bytes  packets  errors  dropped overrun mcast   2646411    9040     0       0       0       0       TX: bytes  packets  errors  dropped carrier collsns 1029731    6006     0       0       0       0       
[root@localhost ~]# ip route list        //显示核心路由表
default via 192.168.153.2 dev ens33 proto static metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 
192.168.153.0/24 dev ens33 proto kernel scope link src 192.168.153.23 metric 100 

 设置虚拟IP地址:

[root@localhost ~]#ip address add 2.2.2.2/24 dev ens33 label ens33:1//先设置新的IP,再删除旧的IP
[root@centos8 ~]#ip address add 10.0.0.88/24 dev ens33[root@centos8 ~]#ip address del 10.0.0.8/24 dev ens33
1.3、hostname

功能是显示和设置系统的主机名,Linux系统中的HOSTNAME环境变量对应保存了当前的主机名称,使用hostname命令能够查看和设置此环境变量的值,想要永久修改主机名称则需要使用hostnamectl命令或直接编辑配置文件/etc/hostname才行。

语法格式:hostname 参数 主机名

-a显示主机别名-d显示DNS域名
-i显示主机IP地址-I显示主机所有的IP地址

参考示例:

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# hostname -i
::1 127.0.0.1
[root@localhost ~]# hostname padoru        //临时修改主机名
[root@localhost ~]# su - 123123
上一次登录:六 2月 22 22:32:38 CST 2025pts/0 上
[123123@padoru ~]$ 
1.4、route

显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。

语法格式:route 参数 域名或IP地址

-n不执行DNS反向查找,直接显示数字形式的IP地址-net到一个网络的路由表
-host到一个主机的路由表

常用参数

add增加指定的路由记录del删除指定的路由记录
target目的网络或目的主机

 参考示例:

[root@padoru ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         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.153.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
[root@padoru ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.153.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.153.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
[root@padoru ~]# route add -net 224.0.0.0 netmask 240.0.0.0 dev ens33    //设置网关
[root@padoru ~]# route add -net 224.0.0.0 netmask 240.0.0.0 reject    //屏蔽一条路由[root@padoru ~]# route del default gw 192.168.120.240        //删除默认网关
[root@padoru ~]# route add default gw 192.168.120.240        //添加默认网关
1.5、netstat

network statistics的缩写,功能是显示各种网络相关信息,例如网络连接状态、路由表信息】接口状态、NAT等。

语法格式:netstat 参数

-a显示所有连接中的接口信息-n直接使用IP地址,而不是域名
-r显示路由表信息-l仅显示正在监听的服务状态
-t显示TCP传输协议的连线状态-u显示UDP传输协议的连线状态
-p显示正在使用接口的程序识别码和名称

 参考示例:

[root@padoru ~]# netstat -a            //列出所有端口
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:smtp          0.0.0.0:*               LISTEN     
tcp        0      0 localhos:x11-ssh-offset 0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:shell           0.0.0.0:*               LISTEN     
raw6       0      0 [::]:ipv6-icmp          [::]:*                  7          
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     9216     /run/systemd/journal/stdout
unix  2      [ ACC ]     STREAM     LISTENING     22531    /var/run/abrt/abrt.socket[root@padoru ~]# netstat -natp | grep ssh
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      9010/sshd: root@pts 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1179/sshd           
tcp        0      0 192.168.153.23:22       192.168.153.1:53369     ESTABLISHED 9010/sshd: root@pts 
tcp6       0      0 ::1:6010                :::*                    LISTEN      9010/sshd: root@pts 
tcp6       0      0 :::22                   :::*                    LISTEN      1179/sshd          
1.6、ss

Socket Statistics的缩写,功能是显示活动套接字信息。ss命令相较于netstat命令,其能够显示更多TCP和连接状态的详细信息,并且速度更快更高效。

语法格式:ss 参数

-a显示所有套接字-e显示执行过程详细信息
-t仅显示TCP套接字-u仅显示UDP套接字
-w仅显示RAW套接字-x仅显示Unix套接字
-l显示处于监听状态的套接字-n不解析域名
-p显示使用套接字的进程-m显示套接字的内存使用情况
-o显示计时器信息-r--reslolve 解析主机名

 参考示例:

[root@padoru ~]# ss -t -a            //显示TCP连接
State      Recv-Q Send-Q            Local Address:Port                             Peer Address:Port                
LISTEN     0      100                   127.0.0.1:smtp                                        *:*                    
LISTEN     0      128                   127.0.0.1:x11-ssh-offset                              *:*                    
LISTEN     0      25                            *:shell                                       *:*                    
[root@padoru ~]# ss -natp |grep ssh        //显示指定进程套接字
LISTEN     0      128    127.0.0.1:6010                     *:*                   users:(("sshd",pid=9010,fd=9))
LISTEN     0      128          *:22                       *:*                   users:(("sshd",pid=1179,fd=3))
ESTAB      0      0      192.168.153.23:22                 192.168.153.1:53369               users:(("sshd",pid=9010,fd=3))
LISTEN     0      128      [::1]:6010                  [::]:*                   users:(("sshd",pid=9010,fd=8))
LISTEN     0      128       [::]:22                    [::]:*                   users:(("sshd",pid=1179,fd=4))
1.7、ping

功能是测试主机间网络的连通信,它发送出基于ICMP传输协议的数据包,要求对方主机予以恢复。

语法格式:ping 参数 域名或IP地址

-c设置发送数据包的次数
-w设置超时秒数,超过此秒数,程序退出

 参考示例:

[root@padoru ~]# ping 192.168.153.2
PING 192.168.153.2 (192.168.153.2) 56(84) bytes of data.
64 bytes from 192.168.153.2: icmp_seq=1 ttl=128 time=0.464 ms
64 bytes from 192.168.153.2: icmp_seq=2 ttl=128 time=0.300 ms
^C
--- 192.168.153.2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.300/0.382/0.464/0.082 ms
[root@padoru ~]# ping -c 3 192.168.153.2        //发送请求包限定3个
PING 192.168.153.2 (192.168.153.2) 56(84) bytes of data.
64 bytes from 192.168.153.2: icmp_seq=1 ttl=128 time=0.192 ms
64 bytes from 192.168.153.2: icmp_seq=2 ttl=128 time=0.313 ms
64 bytes from 192.168.153.2: icmp_seq=3 ttl=128 time=0.281 ms--- 192.168.153.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.192/0.262/0.313/0.051 ms
1.8、traceroute

功能是用于追踪网络数据包在网络上传输时的全部路径,默认发送的数据包大小是40字节。

参考示例:

[root@localhost ~]# traceroute www.baidu.com
traceroute to www.baidu.com (61.135.169.105), 30 hops max, 40 byte packets1  192.168.74.2 (192.168.74.2)  1.534 ms  1.775 ms  1.961 ms2  211.151.56.1 (211.151.56.1)  0.508 ms  0.514 ms  0.507 ms3  211.151.227.206 (211.151.227.206)  0.571 ms  0.558 ms  0.550 ms4  210.77.139.145 (210.77.139.145)  0.708 ms  0.729 ms  0.785 ms5  202.106.42.101 (202.106.42.101)  7.978 ms  8.155 ms  8.311 ms6  bt-228-037.bta.net.cn (202.106.228.37)  772.460 ms bt-228-025.bta.net.cn (202.106.228.25)  2.152 ms 61.148.154.97 (61.148.154.97)  772.107 ms7  124.65.58.221 (124.65.58.221)  4.875 ms 61.148.146.29 (61.148.146.29)  2.124 ms 124.65.58.221 (124.65.58.221)  4.854 ms8  123.126.6.198 (123.126.6.198)  2.944 ms 61.148.156.6 (61.148.156.6)  3.505 ms 123.126.6.198 (123.126.6.198)  2.885 ms9  * * *
10  * * *
1.9、nslookup

Nameserver lookup的缩写,功能是用于查询域名服务器信息。

参考示例:

[root@kgc ~]#nslookup www.baidu.com
Server:		8.8.8.8
Address:	8.8.8.8#53

二、永久修改网络配置

2.1、网络接口配置文件

网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33

[root@padoru ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
//保留以下参数即可完成网卡设置
TYPE=Ethernet                   //接口类型
BOOTPROTO=static                //启动协议,static/dhcpp
DEVICE=ens33                    //网卡名称
ONBOOT=yes                      //网卡自动启动
IPADDR=192.168.153.23           //IP地址
NETMASK=255.255.255.0           //子网掩码
GATEWAY=192.168.153.2           //网关
DNS1=144.144.144.144            //DNS服务器
DNS2=8.8.8.8[root@padoru ~]# systemctl restart network  //重启网络服务,使修改后的配置生效
3.1、主机名配置文件

主机名配置文件:/etc/hostname

[root@padoru ~]# vim /etc/hostname        //主机名配置文件只有第一行生效localhost.localdomain

三、Bonding多网卡绑定

bond是将多个物理网络接口卡(NIC)绑定到一个虚拟接口上,使得多个物理网络接口可以在同一个链路上工作,从而提高带宽、提供冗余和容错。

3.1、bondding工作模式
  • mode 0 (balance-rr 轮询):默认模式,数据包按顺序轮流从每个接口发送,实现负载均衡(需交换机支持)。
  • mode 1 (active-backup 主备):备份模式,只有一个网卡活跃工作,当它失败时,另一个网卡接管工作。
  • mode 2 (balance-xor XOR):使用源 MAC 地址和目标 MAC 地址的异或结果来选择一个网卡,这是一种简单的负载均衡模式。
  • mode 3 (broadcast 广播):所有的流量都会广播到所有网卡,这提供冗余。
  • mode 4 (802.3ad LACP):IEEE 802.3ad 动态链路聚合模式,基于交换机支持 Link Aggregation Control Protocol (LACP) 的配置,通常用于支持 LACP 的交换机。
  • mode 5 (balance-tlb 自适应):基于流量负载的平衡模式,使用传输负载均衡来动态分配流量。
  • mode 6 (balance-alb 自适应):自适应负载均衡,结合了balance-tlb和active-backup,提供更高的容错和负载均衡。
3.2、配置bond
3.2.1、添加网卡

3.2.2、新建bond配置文件
[root@padoru ~]# cd   /etc/sysconfig/network-scripts/
[root@padoru ~]# vim ifcfg-bond0                     //配置新的bond配置文件
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.91.22
NETMASK=255.255.255.0
GATEWAY=192.168.91.2
DNS1=8.8.8.8
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"
3.2.3、修改网卡配置文件
[root@padoru ~]# vim ifcfg-ens33
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0        //主网卡
SLAVE=yes           //备用网卡[root@padoru ~]# vim ifcfg-ens36
NAME=ens36
DEVICE=ens36
BOOTPROTO=none
MASTER=bond0        //主网卡
SLAVE=yes           //备用网卡
ONBOOT=yes[root@padoru ~]# systemctl restart network      //重启网络服务
3.2.4、查看bond配置信息
[root@localhost network-scripts]#cat /proc/net/bonding/bond0 
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active)
Primary Slave: None
Currently Active Slave: ens33
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0Slave Interface: ens33
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:fe:e5:bf
Slave queue ID: 0


http://www.ppmy.cn/news/1574809.html

相关文章

快速提升网站收录:利用网站评论互动

利用网站评论互动是快速提升网站收录的一种有效方法。以下是一些关于如何利用网站评论互动来提升网站收录的具体策略&#xff1a; 一、鼓励用户参与评论互动 设置评论区&#xff1a;在网站的相关页面&#xff0c;如文章页、产品页等&#xff0c;设置评论区&#xff0c;方便用…

算法日常刷题笔记(2)

为保持刷题的习惯 计划一天刷3-5题 然后一周总计汇总一下 这是第二篇笔记 笔记时间为2月17日到2月23日 第一天 找到初始输入字符串 找到初始输入字符串 Ihttps://leetcode.cn/problems/find-the-original-typed-string-i/ Alice 正在她的电脑上输入一个字符串。但是她打字技…

一周学会Flask3 Python Web开发-flask3上下文全局变量session,g和current_app

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili flask3提供了session,g和current_app上下文全局变量来方便我们操作访问数据。 以下是一个表格&#xff0c;用于比较Flask中的…

大语言模型(LLM)微调技术笔记

图1&#xff1a;大模型进化树2 大模型微调 在预训练后&#xff0c;大模型可以获得解决各种任务的通用能力。然而&#xff0c;越来越多的研究表明&#xff0c;大语言模型的能力可以根据特定目标进一步调整。 这就是微调技术&#xff0c;目前主要有两种微调大模型的方法1&…

【LeetCode 热题100】48. 旋转图像以及旋转任意角度的算法思路及python代码

48. 旋转图像 给定一个 n n n n nn 的二维矩阵 m a t r i x matrix matrix 表示一个图像。请你将图像顺时针旋转 90 90 90 度。你必须在 原地 旋转图像&#xff0c;这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1&#xff1a; 输入&…

微信小程序 - 页面跳转(wx.navigateTo、wx.redirectTo、wx.switchTab、wx.reLaunch)

API 跳转 1、wx.navigateTo &#xff08;1&#xff09;基本介绍 功能&#xff1a;保留当前页面&#xff0c;跳转到应用内的某个页面&#xff0c;使用该方法跳转后可以通过返回按钮返回到原页面 使用场景&#xff1a;适用于需要保留当前页面状态&#xff0c;后续还需返回的情…

首次使用WordPress建站的经验分享(一)

之前用过几种内容管理系统(CMS),如:dedeCMS、phpCMS、aspCMS,主要是为了前端独立建站,达到预期的效果,还是需要一定的代码基础的,至少要有HTML、Css、Jquery基础。 据说WordPress 是全球最流行的内容管理系统CMS,从现在开始记录一下使用WordPress 独立建站的步骤 选购…

新手小白学习docker第十弹-------Docker微服务实战

目录 0 引言1 IDEA创建微服务1.1 IDEA配置maven3.91.2 新建项目docker_serve1.3 编写docker_serve代码1.4 启动项目1.5 打包项目1.6 上传项目到虚拟机 2 部署到docker容器2.1 编写Dockerfile2.2 构建镜像2.3 运行容器2.4 访问测试 3 后记 0 引言 真的&#xff0c;这个看着就好…