目录
一、网络参数配置
1、图形化配置
NetworkManager,Linux7系统中,一般建议停止该管理方式;Linux8及以上操作系统统一将网络管理交给NetworkManager管理。
#开启
[root@localhost ~]# systemctl start NetworkManager
#关闭
[root@localhost ~]# systemctl stop NetworkManager
#关闭并开机不自启
[root@localhost ~]# systemctl disable --now NetworkManager
#开启并开机自启
[root@localhost ~]# systemctl enable --now NetworkManager
2、命令行配置
2.1、ifconfig命令
查看及配置网卡参数(临时配置),不能查看基于配置文件的多IP地址的网络参数,默认不能查看到未启用的网卡列表
root用户可以使用该命令更改网卡参数,普通用户只能用户查看
选项:
选项 | 作用 |
---|---|
-a | 查看所有网卡的配置信息,包括未启用网卡 |
up | 启用网卡,ifconfig ens33 up,不会重新读取配置文件 |
down | 停用网卡,ifconfig ens33 down |
案例:
临时配置网卡参数
ifconfig enss 192.168.115.136/24
注意:临时配置,重启网络服务、网卡启停、主机重启都将失效
2.2、ifup和ifdown
ifup ens33
#启用网卡,并读取配置文件
ifdown ens33
#停用网卡
子接口配置
-
基于物理网卡的逻辑接口
-
可以使系统基于一块网卡配置多个IP地址
ifconfig 网卡名:编号(上限999999999) IP地址/子网掩码的网络位长度 【临时配置】
生成子接口配置文件【永久配置】,不能使用DHCP获得地址
cd /etc/sysconfig/network-scripts
cat ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=dhcp
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.126.132
PREFIX=24
GATEWAY=192.168.126.2
DNS1=192.168.126.2
2.3、ip a[ddress]命令
查看网络参数,可以查看到未启用的网卡列表,能够查看基于配置文件实现的多IP地址配置后的网络参数
选项:
选项 | 作用 |
---|---|
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:3c:4d:03 brd ff:ff:ff:ff:ff:ff
altname enp2s1
inet 192.168.126.132/24 brd 192.168.126.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.126.233/24 brd 192.168.126.255 scope global secondary noprefixroute ens33:1
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3c:4d03/64 scope link
valid_lft forever preferred_lft forever
3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:3c:4d:0d brd ff:ff:ff:ff:ff:ff
altname enp2s4
inet 192.168.126.55/24 brd 192.168.126.255 scope global noprefixroute ens36
valid_lft forever preferred_lft forever
inet 192.168.126.66/24 brd 192.168.126.255 scope global secondary noprefixroute ens36:0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3c:4d0d/64 scope link
valid_lft forever preferred_lft forever
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:2a:2b:9c 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
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=dhcp
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.126.132 #IP地址
PREFIX=24 #子网掩码长度,或者使用 NETMASK=255.255.255.0
GATEWAY=192.168.126.2#默认网关,在同一系统下,不管几块网卡,建议配置一个默认网关。
DNS1=192.168.126.2#域名解析服务器地址,不建议在多网卡的情况下书写DNS,因为后启动的网卡会覆盖原有的DNS服务器地址。
2.4.2、多IP地址配置
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR1=192.168.115.150
PREFIX1=24
GATEWAY=192.168.115.2
DNS1=192.168.115.2
IPADDR2=192.168.115.151
PREFIX2=24
DNS2=192.168.115.3
DNS3=192.168.115.4
-
加载配置文件
systemctl restart network ##Linux7使用
#或者
ifdown ens33 && ifup ens33
-
验证参数
#IP地址
ifconfig | ip a
#网关地址查看
route -n
#DNS地址
cat /etc/resolv.conf
3、路由配置
route命令
route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。
选项:
选项 | 描述 |
---|---|
-A | 设置地址类型; |
-C | 打印将Linux核心的路由缓存; |
-v | 详细信息模式; |
-n | 直接显示数字形式的IP地址; |
-e | netstat格式显示路由表; |
-net | 到一个网络的路由表; |
-host | 到一个主机的路由表。 |
参数:
参数 | 描述 |
---|---|
add | 增加指定的路由记录; |
del | 删除指定的路由记录; |
target | 目的网络或目的主机; |
gw | 设置默认网关; |
mss | 设置TCP的最大区块长度(MSS),单位MB; |
window | 指定通过路由表的TCP连接的TCP窗口大小; |
dev | 路由记录所表示的网络接口。 |
route add -net 0/0 gw 192.168.126.55 dev ens36
实验:
1、单一路由直连
#进入R1
[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# vim ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.126.132
PREFIX=24
[root@localhost network-scripts]# ifdown ens33 && ifup ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.126.55
PREFIX=24
[root@localhost network-scripts]# ifdown ens34 ; ifup ens34
[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# vim /etc/sysctl.conf
插入:net.ipv4.ip_forward = 1
[root@localhost network-scripts]# sysctl -p
net.ipv4.ip_forward = 1
#将ens33设置为VMnet1(仅主机模式)、ens34设置为VMnet2(仅主机模式)
#进入虚拟机1
[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# vim ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.126.132
PREFIX=24
GATEWAY=192.168.126.2
DNS1=192.168.126.2
[root@localhost network-scripts]# ifdown ens33 && ifup ens33
#进入虚拟机2
[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# vim ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.126.132
PREFIX=24
GATEWAY=192.168.126.2
DNS1=192.168.126.2
[root@localhost network-scripts]# ifdown ens33 && ifup ens33
#将ens33设置为VMnet2(仅主机模式)
二、网络连接查看
1、netstat
作用
-
查看本地服务的网络监听状态
-
查看客户端连接到本地服务的连接状态
选项
-n, --numeric | 显示数字形式地址而不是去解析主机、端口或用户名。 |
-a, --all | 显示所有的监听或连接状态 |
-p, --program | 显示连接所属进程的PID和名称。 |
-t,--tcp | 显示TCP连接 |
-u,--udp | 显示UDP连接 |
-l | 查看监听 |
[root@localhost yum.repos.d]# netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 1 0 localhost.localdo:51924 ec2-3-210-104-141:https CLOSE_WAIT
tcp 0 0 localhost.localdoma:ssh 192.168.126.1:55605 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 4 [ ] DGRAM 14476 /run/systemd/notify
unix 2 [ ] DGRAM 14478 /run/systemd/cgroups-agent
unix 22 [ ] DGRAM 14490 /run/systemd/journal/dev-log
unix 8 [ ] DGRAM 14502 /run/systemd/journal/socket
unix 2 [ ] DGRAM 37838 /run/user/42/systemd/notify
unix 2 [ ] DGRAM 48885 /run/user/0/systemd/notify
2、ss
作用
-
查看本地服务的网络监听状态
-
查看客户端连接到本地服务的连接状态
选项
-n, --numeric | 显示数字形式地址而不是去解析主机、端口或用户名。 |
-a, --all | 显示所有的监听或连接状态 |
-p, --program | 显示连接所属进程的PID和名称。 |
-t,--tcp | 显示TCP连接 |
-u,--udp | 显示UDP连接 |
-l | 查看监听 |
3、bond绑定
将多个物理网卡进行排列组合,形成逻辑网卡,网卡的高可用
3.1、绑定模式
-
mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地 网卡相连的交换机设备上进行端口聚合来支持绑定技术。
-
mode1(自动备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。
-
mode6(平衡负载模式):平时两块网卡均工作,且自动备援,无须交换机设备提供辅助支持。
3.2、绑定案例
服务器有两块网卡 ens33和ens36
ens33操作
TYPE=ethernet
BOOTPROTO=none
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0
SLAVE=yes
ens36操作
TYPE=ethernet
BOOTPROTO=none
NAME=ens36
DEVICE=ens36
ONBOOT=yes
MASTER=bond0
SLAVE=yes
bond0操作
TYPE=ethernet
BOOTPROTO=none
NAME=bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=192.168.126.135
PREFIX=24
GATEWAY=192.168.126.2
DNS1=192.168.126.2
添加bond配置文件
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的!!!