一、网络参数配置
1、图形化配置
#开启
[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命令
语法
ifconfig [接口]
ifconfig 接口 [aftype] options | address ...
选项
选项 | 作用 |
---|---|
-a | 查看所有网卡的配置信息,包括未启用网卡 |
up | 启用网卡,ifconfig ens33 up,不会重新读取配置文件 |
down | 停用网卡,ifconfig ens33 down |
案例
临时配置网卡参数
ifconfig enss 192.168.115.136/24
2.2、ifup和ifdown
ifup ens33
#启用网卡,并读取配置文件
ifdown ens33
#停用网卡
生成子接口配置文件【永久配置】,不能使用DHCP获得地址
cd /etc/sysconfig/network-scripts
cp ifcfg-ens37 ifcfg-ens37:0
cat ifcfg-ens37:0
TYPE=Ethernet
BOOTPROTO=static
NAME=ens37:0
DEVICE=ens37:0
ONBOOT=yes
IPADDR=192.168.115.214
PREFIX=24
ifdown ens37:0 && ifup ens37:0
2.3、ip a[ddress]命令
语法
ip [ OPTIONS ] OBJECT { COMMAND | help }
选项
选项 | 作用 |
---|---|
address | 查看设备IP地址 |
案例
ip a
2.4、配置文件配置
-
/etc/sysconfig/network-scripts/ifcfg-网卡名
-
永久配置,需要网卡重新读取配置文件
-
网卡启停操作
#启动服务
systemctl start network
#停止服务
systemctl stop network
#重启服务
systemctl restart network
#使用命令行重新加载配置文件
ifup 网卡名
ifdown 网卡名
#使用命令行启停网卡,但是不加载配置文件
ifconfig 网卡名 up | down
2.5、单一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.115.150
#IP地址
PREFIX=24
#子网掩码长度
#或者使用
NETMASK=255.255.255.0
GATEWAY=192.168.115.2
#默认网关,在同一系统下,不管几块网卡,建议配置一个默认网关。
DNS1=192.168.115.2
#域名解析服务器地址,不建议在多网卡的情况下书写DNS,因为后启动的网卡会覆盖原有的DNS服务器地址。
2.6、多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
#或者
ifdown ens33 && ifup ens33
- 验证参数
#IP地址
ifconfig | ip a
#网关地址查看
route -n
#DNS地址
cat /etc/resolv.conf
3、路由配置
3.1、route命令
语法
route [选项] [参数]
选项
选项 | 描述 |
---|---|
-A | 设置地址类型; |
-C | 打印将Linux核心的路由缓存; |
-v | 详细信息模式; |
-n | 直接显示数字形式的IP地址; |
-e | netstat格式显示路由表; |
-net | 到一个网络的路由表; |
-host | 到一个主机的路由表。 |
参数
参数 | 描述 |
---|---|
add | 增加指定的路由记录; |
del | 删除指定的路由记录; |
target | 目的网络或目的主机; |
gw | 设置默认网关; |
mss | 设置TCP的最大区块长度(MSS),单位MB; |
window | 指定通过路由表的TCP连接的TCP窗口大小; |
dev | 路由记录所表示的网络接口。 |
实验
1、单一路由直连
#进入R1
[root@localhost ~]# systemctl disable --now NetworkManager
[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.115.113
PREFIX=24
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.116.113
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.115.112
PREFIX=24
GATEWAY=192.168.115.113
DNS1=192.168.115.2
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
#将ens33设置为VMnet1(仅主机模式)
#进入虚拟机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.116.112
PREFIX=24
GATEWAY=192.168.116.113
DNS1=192.168.116.2
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
#将ens33设置为VMnet2(仅主机模式)
2、两个路由连接
#进入R1
[root@localhost ~]# systemctl disable --now NetworkManager
[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.115.114
PREFIX=24
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
[root@localhost network-scripts]# vim ifcfg-ens34
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.116.117
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(仅主机模式)
[root@localhost network-scripts]# route add -net 192.168.117.0/24 gw 192.168.116.114
#进入R2
[root@localhost ~]# systemctl disable --now NetworkManager
[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.116.114
PREFIX=24
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
[root@localhost network-scripts]# vim ifcfg-ens34
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.117.114
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设置为VMnet2(仅主机模式)、ens34设置为VMnet3(仅主机模式)
[root@localhost network-scripts]# route add -net 192.168.115.0/24 gw 192.168.116.117
#进入虚拟机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.115.112
PREFIX=24
GATEWAY=192.168.115.114
DNS1=192.168.115.2
#进入虚拟机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.116.113
PREFIX=24
GATEWAY=192.168.117.114
DNS1=192.168.117.2
[root@localhost network-scripts]# ifdown ens33 ; ifup ens33
#将ens33设置为VMnet3(仅主机模式)
二、网络连接查看
1、netstat
作用
-
查看本地服务的网络监听状态
-
查看客户端连接到本地服务的连接状态
语法
netstat 选项 (-anptu)
选项
选项参数 | 长参数形式 | 功能描述 |
---|---|---|
-n | --numeric | 以数字形式显示地址,不解析主机名、端口或用户名 |
-a | --all | 显示所有监听或连接状态(包括非监听状态) |
-p | --program | 显示连接所属进程的 PID 和名称 |
-t | --tcp | 仅显示 TCP 协议相关的连接 |
-u | --udp | 仅显示 UDP 协议相关的连接 |
-l | 无长参数形式 | 仅查看监听状态的连接(不显示已建立的连接) |
2、ss
作用
-
查看本地服务的网络监听状态
-
查看客户端连接到本地服务的连接状态
语法
ss 选项 (-anptuli)
选项
参数 | 描述 |
---|---|
-n | 以数字形式显示地址(不解析主机名、端口或用户名) |
-a | 显示所有监听和非监听的连接状态 |
-p | 显示进程信息(PID 和名称) |
-t | 仅显示 TCP 协议连接 |
-u | 仅显示 UDP 协议连接 |
-i | 查看客户端连接到本地的状态(需结合其他参数使用) |
-l | 仅显示处于监听状态的连接 |
使用示例
- 显示所有 TCP 监听连接及进程信息:
netstat -tulnp
- 显示所有 UDP 连接(数字形式):
netstat -un
开启Linux服务的路由功能
vim /etc/sysctl.conf
内核参数修改配置文件
添加
net.ipv4.ip_forward = 1
sysctl -p
加载配置
3、bond绑定
将多个物理网卡进行排列组合,形成逻辑网卡,网卡的高可用
3.1、绑定模式
-
mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地 网卡相连的交换机设备上进行端口聚合来支持绑定技术。
-
mode1(自动备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。
-
mode6(平衡负载模式):平时两块网卡均工作,且自动备援,无须交换机设备提供辅助支持。
4、Linux下的抓包工具
tcpdump
语法
tcpdump -i 网卡名
选项
选项 | 功能描述 |
---|---|
-c | 接收指定数量的报文后自动退出 |
-i | 指定监听的网络接口。若不指定,默认选择系统最小已配置接口(排除 loopback),选择时可能中断连接 |
-n | 禁用地址转换(主机地址、端口号等不显示为域名或服务名) |
-t | 禁止输出时戳标志 |
-v | 启用详细输出(如显示 IP 数据报的生存周期和服务类型) |
-e | 显示链路层报头信息 |
5、web压力测试工具
ab -c 100 -n 2000 http://192.168.1.254/
6、路由追踪命令
traceroute 目标地址或域名