rhel网卡配置文件、网络常用命令、网卡名称优化和模拟不同网络区域通信
1.rhel9文件的方式管理网络
[root@Servera ~]# cd /etc/NetworkManager/system-connections/
[root@Servera system-connections]# ll
总用量 4
-rw-------. 1 root root 229 7月 23 09:41 ens160.nmconnection
[root@Servera system-connections]# rm -rf ens160.nmconnection
[root@Servera system-connections]# vim lee.nmconnection
[root@Servera system-connections]# cat lee.nmconnection
[connection]
id=lee # 链接名称
type=ethernet # 网络类型
interface-name=ens160 # 系统中网卡设备的名称[ipv4]
method=manual # 手动指定网络,静态网络
address1=192.168.36.10/24,192.168.36.2 # 指定ip,netmask,gw
dns=8.8.8.8 # 指定dns[root@Servera system-connections]# chmod 600 lee.nmconnection # 赋予权限
[root@Servera system-connections]# nmcli connection reload # 重启服务
[root@Servera system-connections]# nmcli connection up lee # 启动网卡
2.rhel7文件的方式管理网络
[root@Server_b ~]# cd /etc/sysconfig/network-scripts/
[root@Server_b network-scripts]# cp ifcfg-ens33 ifcfg-ens33.bak # 备份
[root@Server_b network-scripts]# vim ifcfg-ens33
DEVICE=ens33
NAME=lee
BOOTPROTO=none
IPADDR0=192.168.36.20
NETMASK0=255.255.255.0
GATEWAY0=192.168.36.2
DNS1=8.8.8.8
[root@Server_b network-scripts]#nmcli connection reload
3.查看dns
[root@Server_b ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 8.8.8.8
4.查看ip
ip a
ifconfig
nmcli device show
5.查询内核路由表或网关
[root@Serverc ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.36.2 0.0.0.0 UG 100 0 0 ens160
192.168.36.0 0.0.0.0 255.255.255.0 U 100 0 0 ens160
6.查询服务端口
[root@Serverc ~]# netstat -antulpe
7.网卡名称调整
# 禁用 Predictable Network Interface Names(可预测网络接口命名),恢复传统的网卡命名方式(如 eth0, eth1)
[root@Serverc ~]# grubby --update-kernel ALL --args net.ifnames=0
[root@Serverc ~]# grubby --update-kernel ALL --args selinux=0 # 关闭selinux
更改网卡配置文件
重启
[root@Serverc ~]# reboot
验证
8.添加仅主机网卡实现不同网段的通信
查看仅主机网络IP段
添加仅主机网卡,设置双网卡主机rhel9.1-node02
鼠标右击后点击设置
点击网络适配器后,完成即可
编辑网卡配置文件
重新读取配置文件
[root@Serverc system-connections]# nmcli connection reload
[root@Serverc system-connections]# nmcli connection up eth1
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
[root@Serverc system-connections]# nmcli connection show
验证配置文件是否生效
相同原理设置另一台仅主机设备rhel9.1-node01
设置内核路由功能,使同一个系统中的所有网卡都可以互相通信
[root@Serverc ~]# sysctl -a | grep ip_forward # 查看参数
net.ipv4.ip_forward = 0
net.ipv4.ip_forward_update_priority = 1
net.ipv4.ip_forward_use_pmtu = 0
[root@Serverc ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward=1
[root@Serverc ~]# sysctl -p # 使配置生效
net.ipv4.ip_forward = 1
编写火墙规则
# 在nat表的POSTROUTING链中添加一条规则,对从eth0网卡发出的所有数据包(-o eth0),执行源地址转换
#(SNAT),将数据包的源 IP 修改为192.168.88.30
# 作用:通常用于局域网主机通过网关访问外部网络时,统一使用网关的192.168.88.30作为源 IP,实现多机共享一个公网 / 出口 IP
[root@Serverc ~]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.88.30# 查看nat表中所有链的规则(-n表示 IP 地址以数字形式显示,-L表示列出规则)
# 输出显示POSTROUTING链已成功添加上述 SNAT 规则,确认配置生效
[root@Serverc ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target prot opt source destination Chain INPUT (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- 0.0.0.0/0 0.0.0.0/0 to:192.168.88.30
测试双方是否能够通信
在仅主机模式网卡的主机中设定网关为双网卡主机的仅主机模式网卡的IP
[root@Serverd system-connections]# vim eth1.nmconnection
[root@Serverd system-connections]# nmcli connection reload # 重新加载系统中的网络连接配置文件
[root@Serverd system-connections]# nmcli connection up eth1 # 激活(启动)名为eth1的网络连接
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/7)
[root@Serverd system-connections]# route -n # 查看内核路由表
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.88.100 0.0.0.0 UG 100 0 0 ens160
192.168.88.0 0.0.0.0 255.255.255.0 U 100 0 0 ens160