Linux系统网络管理(小白的“升级打怪”成长之路)

目录

一、网络参数配置

1、图形化配置

2、命令行配置

2.1、ifconfig命令

2.2、ifup和ifdown

2.3、ip a[ddress]命令

2.4、配置文件配置

2.4.1、单一IP地址配置

2.4.2、多IP地址配置

3、路由配置

二、网络连接查看

1、netstat

2、ss

3、bond绑定

3.1、绑定模式

3.2、绑定案例


一、网络参数配置

1、图形化配置

NetworkManager,Linux7系统中,一般建议停掉该管理方式;Linux8以上操作系统统一将网络管理交给Networkmanager管理。

#开启
[root@bogon ~]# systemctl start NetworkManager
#关闭
[root@bogon ~]# systemctl stop NetworkManager
#关闭并开机不自启
[root@bogon ~]# systemctl disable --now NetworkManager
Removed /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
Removed /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service.
#开机并开机自启
[root@bogon ~]# systemctl enable --now NetworkManager
Created symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service → /usr/lib/systemd/system/NetworkManager.service.
Created symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service → /usr/lib/systemd/system/NetworkManager-dispatcher.service.
Created symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service → /usr/lib/systemd/system/NetworkManager-wait-online.service.

2、命令行配置

2.1、ifconfig命令

查看及配置网卡参数(临时配置),不能查看基于配置文件的多IP地址的网络参数,默认不能查看未启用的网卡列表

root用户可以使用该命令更改网卡参数,普通用户只能用户查看

语法:

ifconfig [接口]
ifconfig 接口 [aftype] options | addreess...

选项:

选项作用
-a查看所有网卡的配置信息,包括未启用网卡
up启用网卡,ifconfig ens33 up,不会重新读取配置文件
down停用网卡,ifconfig ens33 down

案例:

临时配置网卡参数

[root@bogon network-scripts]# ifconfig ens37 192.168.58.160/24
[root@bogon network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.58.136  netmask 255.255.255.0  broadcast 192.168.58.255
        inet6 fe80::20c:29ff:fe5b:746c  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:5b:74:6c  txqueuelen 1000  (Ethernet)
        RX packets 47227  bytes 47988221 (45.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 32422  bytes 32980155 (31.4 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
​
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.58.160  netmask 255.255.255.0  broadcast 192.168.58.255
        ether 00:0c:29:5b:74:76  txqueuelen 1000  (Ethernet)
        RX packets 3233  bytes 214415 (209.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 214  bytes 118763 (115.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

注意:临时配置,主机重启将失效

2.2、ifup和ifdown
#Linux7默认安装
#Rocky8安装命令
yum install -y network-scripts
ifup ens33 
#启用网卡,并读取配置文件
ifdown ens33
#停用网卡

子接口配置

基于物理网卡的逻辑接口

可以使系统基于一块网卡配置多个IP地址

ifconfig 网卡名:编号(上限999999999) IP地址/子网掩码的网络位长度 【临时配置】

生成子接口配置文件【永久配置】,不能使用DHCP获得地址

[root@bogon ~]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# ls
ifcfg-有线连接_1  ifdown-ippp    ifdown-Team      ifup-eth    ifup-post      ifup-wireless
ifcfg-ens33       ifdown-ipv6    ifdown-TeamPort  ifup-ippp   ifup-routes    init.ipv6-global
ifcfg-lo          ifdown-isdn    ifdown-tunnel    ifup-ipv6   ifup-sit       network-functions
ifdown            ifdown-post    ifup             ifup-isdn   ifup-Team      network-functions-ipv6
ifdown-bnep       ifdown-routes  ifup-aliases     ifup-plip   ifup-TeamPort
ifdown-eth        ifdown-sit     ifup-bnep        ifup-plusb  ifup-tunnel
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens33:0
[root@localhost network-scripts]# ls
ifcfg-有线连接_1  ifdown-eth     ifdown-sit       ifup-bnep  ifup-plusb     ifup-tunnel
ifcfg-ens33       ifdown-ippp    ifdown-Team      ifup-eth   ifup-post      ifup-wireless
ifcfg-ens33:0     ifdown-ipv6    ifdown-TeamPort  ifup-ippp  ifup-routes    init.ipv6-global
ifcfg-lo          ifdown-isdn    ifdown-tunnel    ifup-ipv6  ifup-sit       network-functions
ifdown            ifdown-post    ifup             ifup-isdn  ifup-Team      network-functions-ipv6
ifdown-bnep       ifdown-routes  ifup-aliases     ifup-plip  ifup-TeamPort
[root@localhost network-scripts]# vim ifcfg-ens33:0
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33:0
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.58.160
PREFIX=24
[root@localhost ~]# systemctl stop network
[root@localhost ~]# systemctl start network
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:5b:74:6c brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.58.136/24 brd 192.168.58.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.58.160/24 brd 192.168.58.255 scope global secondary ens33:0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe5b:746c/64 scope link 
       valid_lft forever preferred_lft forever
2.3、ip a[ddress]命令

查看网络参数,可以查看到未启用的网卡列表,能够查看基于配置文件实现的多IP地址配置后的网络参数

语法:

ip [ OPTIONS ] OBJECT { COMMAND | help }

选项:

选项作用
address查看设备IP地址

案例:

[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:5b:74:6c brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.58.136/24 brd 192.168.58.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe5b:746c/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:3f:34:5d brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:5b:74:76 brd ff:ff:ff:ff:ff:ff
    altname enp2s5
    inet 192.168.58.137/24 brd 192.168.58.255 scope global dynamic noprefixroute ens37
       valid_lft 1336sec preferred_lft 1336sec
    inet6 fe80::1b3:716d:68b2:b04/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
2.4、配置文件配置

/etc/sysconfig/network-scripts/ifcfg-网卡名

永久配置,需要网卡重新读取配置文件

网卡启停操作

#启动服务
systemctl  start  network
#停止服务
systemctl  stop  network
#重启服务
systemctl  restart  network
#使用命令行重新加载配置文件
ifup  网卡名
ifdown 网卡名
#使用命令行启停网卡,但是不加载配置文件
ifconfig  网卡名  up | down
2.4.1、单一IP地址配置

自动获得,必须在当前网络中存在DHCP服务器。

TYPE=Ethernet
#网卡参数的类型,Ethernet:以太网
BOOTPROTO=dhcp
#获得IP地址的方式,dhcp|static|none
NAME=ens33
#网卡描述名称,可有可无
DEVICE=ens33
#网卡设备名称,必须与ifconfig看到的网卡名保持一致。不能书写不存在的网卡名
ONBOOT=yes
#是否启用配置文件,yes|no

手动配置

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.58.136
#IP地址
PREFIX=24
#子网掩码长度
#或者使用
NETMASK=255.255.255.0
GATEWAY=192.168.58.2
#默认网关,在同一系统下,不管几块网卡,建议配置一个默认网关。
DNS1=192.168.58.2
#域名解析服务器地址,不建议在多网卡的情况下书写DNS,因为后启动的网卡会覆盖原有的DNS服务器地址。
2.4.2、多IP地址配置
[root@bogon network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@bogon network-scripts]# vim ifcfg-ens37
TYPE=Ethernet
BOOTPROTO=static
NAME=ens37
DEVICE=ens37
ONBOOT=yes
IPADDR1=192.168.58.150
PREFIX1=24
GATEWAY=192.168.58.2
DNS1=192.168.58.2
IPADDR2=192.168.58.151
PREFIX2=24
DNS2=192.168.58.3
IPADDR3=192.168.58.152
PREFIX3=24
DNS3=192.168.58.4
DNS4=192.168.58.5
[root@bogon network-scripts]# ifdown ifcfg-ens37 && ifup ifcfg-ens37
​
#多地址查看只能用ip a

加载配置文件

systemctl restart network   ##Linux7使用
#或者
ifdown  ens33 && ifup ens33
  • 验证参数

#IP地址
ip a
#网关地址查看
route -n
#DNS地址
cat /etc/resolv.conf

3、路由配置

route命令

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

语法:

route [选项] [参数]

选项:

选项描述
-n直接显示数字形式的IP地址;
-net到一个网络的路由表;

参数:

参数描述
add增加指定的路由记录;
del删除指定的路由记录;
gw设置默认网关;
[root@bogon ~]# route add -net 0/0 gw 192.168.58.2

二、网络连接查看

1、netstat

作用

查看本地服务的网络监听状态

查看客户端连接到本地服务的连接状态

语法

netstat  选项 (-anptu)
[root@bogon network-scripts]# netstat -anptu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1194/cupsd          
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1948/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1196/sshd           
tcp        0    152 192.168.58.136:22       192.168.58.1:56429      ESTABLISHED 55896/sshd: root [p 
tcp        0     36 192.168.58.136:22       192.168.58.1:56950      ESTABLISHED 68771/sshd: root [p 
tcp6       0      0 ::1:631                 :::*                    LISTEN      1194/cupsd          
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      1196/sshd           
udp        0      0 0.0.0.0:35479           0.0.0.0:*                           972/avahi-daemon: r 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           972/avahi-daemon: r 
udp        0      0 192.168.122.1:53        0.0.0.0:*                           1948/dnsmasq        
udp        0      0 0.0.0.0:67              0.0.0.0:*                           1948/dnsmasq        
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/systemd           
udp        0      0 127.0.0.1:323           0.0.0.0:*                           989/chronyd         
udp6       0      0 :::5353                 :::*                                972/avahi-daemon: r 
udp6       0      0 :::60709                :::*                                972/avahi-daemon: r 
udp6       0      0 :::111                  :::*                                1/systemd           
udp6       0      0 ::1:323                 :::*                                989/chronyd           

2、ss

作用

查看本地服务的网络监听状态

查看客户端连接到本地服务的连接状态

语法

ss  选项 (-anptu)(或-anptuil)
[root@bogon network-scripts]# ss -anptu
Netid       State         Recv-Q        Send-Q                Local Address:Port                Peer Address:Port        Process                                                                                                                  
udp         UNCONN        0             0                           0.0.0.0:35479                    0.0.0.0:*            users:(("avahi-daemon",pid=972,fd=14))                                                                                  
udp         UNCONN        0             0                           0.0.0.0:5353                     0.0.0.0:*            users:(("avahi-daemon",pid=972,fd=12))                                                                                  
udp         UNCONN        0             0                     192.168.122.1:53                       0.0.0.0:*            users:(("dnsmasq",pid=1948,fd=5))                                                                                       
udp         UNCONN        0             0                    0.0.0.0%virbr0:67                       0.0.0.0:*            users:(("dnsmasq",pid=1948,fd=3))                                                                                       
udp         UNCONN        0             0                           0.0.0.0:111                      0.0.0.0:*            users:(("rpcbind",pid=928,fd=5),("systemd",pid=1,fd=227))                                                               
udp         UNCONN        0             0                         127.0.0.1:323                      0.0.0.0:*            users:(("chronyd",pid=989,fd=5))                                                                                        
udp         UNCONN        0             0                              [::]:5353                        [::]:*            users:(("avahi-daemon",pid=972,fd=13))                                                                                  
udp         UNCONN        0             0                              [::]:60709                       [::]:*            users:(("avahi-daemon",pid=972,fd=15))                                                                                  
udp         UNCONN        0             0                              [::]:111                         [::]:*            users:(("rpcbind",pid=928,fd=7),("systemd",pid=1,fd=229))                                                               
udp         UNCONN        0             0                             [::1]:323                         [::]:*            users:(("chronyd",pid=989,fd=6))                                                                                        
tcp         LISTEN        0             128                       127.0.0.1:631                      0.0.0.0:*            users:(("cupsd",pid=1194,fd=7))                                                                                         
tcp         LISTEN        0             128                         0.0.0.0:111                      0.0.0.0:*            users:(("rpcbind",pid=928,fd=4),("systemd",pid=1,fd=226))                                                               
tcp         LISTEN        0             32                    192.168.122.1:53                       0.0.0.0:*            users:(("dnsmasq",pid=1948,fd=6))                                                                                       
tcp         LISTEN        0             128                         0.0.0.0:22                       0.0.0.0:*            users:(("sshd",pid=1196,fd=3))                                                                                          
tcp         ESTAB         0             152                  192.168.58.136:22                  192.168.58.1:56429        users:(("sshd",pid=55900,fd=4),("sshd",pid=55896,fd=4))                                                                 
tcp         ESTAB         0             36                   192.168.58.136:22                  192.168.58.1:56950        users:(("sshd",pid=68775,fd=4),("sshd",pid=68771,fd=4))                                                                 
tcp         LISTEN        0             128                           [::1]:631                         [::]:*            users:(("cupsd",pid=1194,fd=6))                                                                                         
tcp         LISTEN        0             128                            [::]:111                         [::]:*            users:(("rpcbind",pid=928,fd=6),("systemd",pid=1,fd=228))                                                               
tcp         LISTEN        0             128                            [::]:22                          [::]:*            users:(("sshd",pid=1196,fd=4))                                       

选项

-n, --numeric 
​
显示数字形式地址而不是去解析主机、端口或用户名。
​
-a, --all
​
显示所有的监听或连接状态
​
-p, --program
​
显示连接所属进程的PID和名称。
​
-t,--tcp
​
显示TCP连接
​
-u,--udp
​
显示UDP连接
​
-i,--info
​
查看客户端连接到本地的状态
​
-l
​
查看监听

开启Linux服务的路由功能

vim /etc/sysctl.conf
​
内核参数修改配置文件
​
添加
​
net.ipv4.ip_forward = 1
​
sysctl -p
​
加载配置
拓展:
cat /proc/sys/net/ipv4/ip_forward
vim /etc/sysctl.d/99-sysctl.conf

3、bond绑定

将多个物理网卡进行排列组合,形成逻辑网卡,网卡的高可用

3.1、绑定模式

1)mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地 网卡相连的交换机设备上进行端口聚合来支持绑定技术。

2)mode1(自动备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。

3)mode6(平衡负载模式):平时两块网卡均工作,且自动备援,无须交换机设备提供辅助支持。

3.2、绑定案例

服务器有两块网卡 ens33和ens37

ens33操作

[root@bogon ~]# cd /etc/sysconfig/network-scripts/
[root@bogon network-scripts]# vim ifcfg-ens33
YPE=Ethernet
BOOTPROTO=none
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0
SLAVE=yes

ens37操作

[root@bogon network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@bogon network-scripts]# vim ifcfg-ens337
TYPE=Ethernet
BOOTPROTO=none
NAME=ens37
DEVICE=ens37
ONBOOT=yes
MASTER=bond0
SLAVE=yes

bond0操作

[root@bogon network-scripts]# cp ifcfg-ens37 ifcfg-bond0
[root@bogon network-scripts]# vim ifcfg-bond0
TYPE=Ethernet
BOOTPROTO=none
NAME=bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=192.168.58.136
PREFIX=24
GATEWAY=192.168.58.2
DNS1=192.168.58.2

添加bond配置文件

[root@bogon network-scripts]# vim /etc/modprobe.d/bond.conf
alias bond0 bonding
  
options bonding mode=6 miimon=200

关闭网络图形化服务

systemctl stop NetworkManager

重启网络服务

ifup ens34 && ifup ens37 && ifup bond0
​
systemctl restart network #重启会出现启动失败,但是bond绑定是OK的!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值