rhel网络概述
- 系统上每个网络端口都有一个名称,可以通过该名称来配置和识别
- 早期rhel上用于eth0、eth1等名称用于各个网络接口;根据系统检测到的网络顺序进行命名,随着设备的添加或移除,这种命名机制可能会改变,并且PCIe标准无法保证系统启动时检测设备顺序,这些都可能导致设备命名发生变化
- 在rhel7开始,使用了新的命名体系。系统将基于固件信息,PCI总线拓扑以及网络设备类型来分配网络接口名称。
- 网络接口名称以接口类型开头:
-- 以太网接口以en开头;
-- WLAN接口以wl开头;
-- WWAN接口以ww开头;
- 在类型之后,接口名称其余的部分将基于服务器固件所提供的信息,或由PCI拓扑中设备的位置来确定:
-- oN:表示板载设备,且服务器的固件提供设备的索引编号N
-- sN:表示该设备位于PCI热插拔插槽N中
-- pMsN:表示这是一个位于插槽N中总线M上的PCI设备
[root@myhost ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virBr state UP mode DEFAULT group default qlen 1000
link/ether 94:de:80:54:61:4b brd ff:ff:ff:ff:ff:ff #位于插槽0中总线3上的PCI设备
验证网络配置
[root@myhost ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virBr state UP mode DEFAULT group default qlen 1000
link/ether 94:de:80:54:61:4b brd ff:ff:ff:ff:ff:ff
[root@serverb ~]# ip addr show ens3
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 52:54:00:1f:70:96 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.102/24 brd 192.168.2.255 scope global noprefixroute ens3
valid_lft forever preferred_lft forever
inet6 fe80::870e:88a2:17b:6955/64 scope link noprefixroute
valid_lft forever preferred_lft forever
- 显示性能统计信息:ip -s link show 网卡名称
[root@serverb ~]# ip -s link show ens3
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:1f:70:96 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast #网卡接收统计信息
443309252 531787 0 0 0 0
TX: bytes packets errors dropped carrier collsns #网卡发送统计信息
3353305 37012 0 0 0 0
- 检查主机之间的连接:ping的使用
ping命令的常用选项:
-c:指定ping命令发送数据包的次数。
-i:指定ping命令发送数据包的间隔时间。
-w:指定ping命令等待响应的时间。
#只ping3次
[root@serverb ~]# ping -c 3 192.168.2.100
PING 192.168.2.100 (192.168.2.100) 56(84) bytes of data.
64 bytes from 192.168.2.100: icmp_seq=1 ttl=64 time=0.357 ms
64 bytes from 192.168.2.100: icmp_seq=2 ttl=64 time=0.343 ms
64 bytes from 192.168.2.100: icmp_seq=3 ttl=64 time=0.438 ms
--- 192.168.2.100 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.343/0.379/0.438/0.044 ms
#ping3次,每次间隔3s
[root@serverb ~]# ping -c 3 -i 3 192.168.2.100
PING 192.168.2.100 (192.168.2.100) 56(84) bytes of data.
64 bytes from 192.168.2.100: icmp_seq=1 ttl=64 time=0.410 ms
64 bytes from 192.168.2.100: icmp_seq=2 ttl=64 time=0.356 ms
64 bytes from 192.168.2.100: icmp_seq=3 ttl=64 time=0.340 ms
--- 192.168.2.100 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 6000ms
rtt min/avg/max/mdev = 0.340/0.368/0.410/0.037 ms
#ping1秒钟
[root@serverb ~]# ping -w 1 192.168.2.100
PING 192.168.2.100 (192.168.2.100) 56(84) bytes of data.
64 bytes from 192.168.2.100: icmp_seq=1 ttl=64 time=0.374 ms
--- 192.168.2.100 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.374/0.374/0.374/0.000 ms
#显示路由表
[root@myhost ~]# ip route show
default via 192.168.2.1 dev virBr proto static metric 425
172.22.0.0/16 dev ztc25jjsjh proto kernel scope link src 172.22.151.130
192.168.2.0/24 dev virBr proto kernel scope link src 192.168.2.100 metric 425
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
[root@serverb ~]# ss -atn
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:*
LISTEN 0 100 127.0.0.1:25 *:*
ESTAB 0 0 192.168.2.102:22 192.168.2.142:63687
ESTAB 0 48 192.168.2.102:22 192.168.2.142:63686
LISTEN 0 128 [::]:22 [::]:*
LISTEN 0 100 [::1]:25 [::]:*
LISTEN 0 128 [::]:80 [::]:*
从命令行管理网络
- NetworkManager是监控和管理网络设置的守护进程。
- 命令行和图形工具和NetworkManager通信,将配置文件存放在/etc/NetworkManager/system-connections/xxx.nmconnection(不过存放在/etc/sysconfig/network-scripts/ifcfg-xxx也是可以识别的)
- 查看联网信息
-- 显示所有网络设备的状态:nmcli dev status
-- 显示所有连接列表,如果仅列出活动的连接,使用--active选项:nmcli conn show
- 使用nmtui图形文本界面创建、修改、删除、应用网络连接
-- 在终端中键入nmtui
nmcli con mod ens3 ipv4.addr 192.168.2.102/24 #设置IP地址,和子网掩码255.255.255.0
nmcli con mod ens3 ipv4.gateway 192.168.2.100 #配置网关
nmcli con mod ens3 ipv4.dns 192.168.2.1 #配置dns
nmcli con mod ens3 ipv4.method manual #ipv4静态方式配置
nmcli con up ens3 #激活网卡
nmcli dev show #显示连接设备
- 编辑文件来配置
-- 从 Red Hat Enterprise Linux 8 开始,网络配置存储在/etc/NetworkManager/system-connections/ 目录中。此新配置位置使用密钥文件格式而不是 ifcfg 格式。但是,以前存储在 /etc/sysconfig/network-scripts/ 的配置继续工作。/etc/NetworkManager/system-connections/ 目录使用 nmcli con mod namecommand存储任何更改
-- 修改完成之后使用命令nmcli con reload读取配置
-- nmcli con mod和xxx.connection文件的指令比较
配置主机名和名称解析
- 更改主机名
-- hostname临时修改主机名,重启后失效;也可以显示当前的临时主机名
-- 永久修改主机名,/etc/hostname文件中指定静态主机名
-- hostnamectl set-hostname 主机名;修改静态主机名
[root@servera ~]# hostname
servera
[root@servera ~]# hostname serverb
[root@servera ~]# hostname
serverb
[root@servera ~]# hostnamectl
Static hostname: servera
Transient hostname: serverb
[root@servera ~]# hostnamectl set-hostname serverb
[root@servera ~]# hostnamectl
Static hostname: serverb
- 配置名称解析
根解析器用于将主机名称转换成IP地址。根据/etc/nsswitch.conf文件的配置来确定查找位置,默认情况下先查找/etc/hosts文件
[root@serverb ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.2.100 myhost
[root@serverb ~]# getent hosts myhost
192.168.2.100 myhost