配置私有接口
连接到 ipaserver.onitroad.com 并配置网络接口。
检查网络设备的状态。
[root@ipaserver ~]# nmcli device status DEVICE TYPE STATE CONNECTION eno16777728 ethernet disconnected - eno33554968 ethernet disconnected - lo loopback unmanaged - [root@ipaserver ~]#
使用路由器设置的必要设置配置专用接口。
[root@ipaserver ~]# nmcli connection add con-name prv0 ifname eno16777728 type ethernet autoconnect yes ip4 192.168.113.10/24 gw4 192.168.113.10 Connection 'prv0' (0f5bebd6-e737-48ba-a34e-0c272a365982) successfully added. [root@ipaserver ~]# nmcli connection modify prv0 ipv4.method manual ipv4.dns 192.168.113.10 ipv6.method ignore [root@ipaserver ~]# nmcli connection modify prv0 ipv4.never-default yes [root@ipaserver ~]# nmcli connection modify prv0 connection.zone internal [root@ipaserver ~]# nmcli connection down prv0 ; nmcli connection up prv0 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
设置环境
- 操作系统 - CentOS 7
- 主机名 - ipaserver.onitroad.com
- 专用接口 - eno16777728
- 公共接口 - eno33554968
路由器是一种在计算机网络之间转发数据包的网络设备。
路由器在 Internet 上执行流量引导功能。
如果我们在 Linux 机器上有两个接口,并且每个接口连接到不同的网络,我们就可以将 Linux 机器转换为虚拟路由器。
连接到我们本地网络的接口称为私有接口。
而连接到外部世界的接口称为公共接口。
在这篇文章中,我们将设置一台 CentOS 7 机器作为虚拟路由器。
测试路由器配置
连接到我们专用网络中的客户端机器 client2.onitroad.com 并设置默认网关,如下所示。
[root@client2 ~]# nmcli c a con-name eno16777728 ifname eno16777728 autoconnect yes type ethernet ip4 192.168.113.11/24 gw4 192.168.113.10
使用 tracepath 命令检查现在使用的网络路径。
[root@client2 ~]# tracepath 8.8.8.8 1: 192.168.113.11 0.075ms pmtu 1500 1: 192.168.113.10 0.403ms 1: 192.168.113.10 0.178ms 2: 192.168.1.2 0.328ms 3: no reply 4: no reply
它表明我们的 Red Hat Enterprise Linux (RHEL) 7 机器已成功配置为虚拟路由器。
on it road.com
配置公共接口
检查网络设备的状态。
[root@ipaserver ~]# nmcli device status DEVICE TYPE STATE CONNECTION eno16777728 ethernet connected prv0 eno33554968 ethernet disconnected - lo loopback unmanaged - [root@ipaserver ~]#
使用路由器设置的必要设置配置公共接口。
[root@ipaserver ~]# nmcli connection add con-name pub0 ifname eno33554968 type ethernet autoconnect yes ip4 192.168.1.50/24 gw4 192.168.1.2 Connection 'pub0' (0f4bebd6-e717-49ca-a33e-0c272a336982) successfully added. [root@ipaserver ~]# nmcli connection modify pub0 ipv4.method manual ipv4.dns 192.168.1.2 ipv6.method ignore [root@ipaserver ~]# nmcli connection modify pub0 connection.zone external [root@ipaserver ~]# nmcli connection down pub0 ; nmcli connection up pub0 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
配置防火墙
将内部区域设置为防火墙的默认区域。
[root@ipaserver ~]# firewall-cmd --set-default-zone=internal success
检查防火墙的状态。
[root@ipaserver ~]# firewall-cmd --list-all internal (default, active) interfaces: eno16777728 sources: services: dhcpv6-client ipp-client mdns samba-client ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules: [root@ipaserver ~]# firewall-cmd --list-all --zone=external external (active) interfaces: eno33554968 sources: services: ssh ports: masquerade: yes forward-ports: icmp-blocks: rich rules:
两个接口都在其相关区域中。
确保在内核设置中启用了 IP 转发。
[root@ipaserver ~]# sysctl -a | grep ip_forward net.ipv4.ip_forward = 1
日期:2020-09-17 00:13:53 来源:oir作者:oir