如何在 ubuntu 服务器 16.04 LTS 中的两个接口之间转发 IP?

如何在 ubuntu 服务器 16.04 LTS 中的两个接口之间转发 IP?

我正在准备带有 2 个接口的 ubuntu 路由器

enp2s0(连接到 ISP WAN)

enp2s8(内部 LAN 网络和 DHCP 服务器及 DNS 服务器)

我的接口配置(/etc/network/interfaces)是:

auto enp2s8
iface enp2s8 inet static
address 192.168.5.1
netmask 255.255.255.0
broadcast 192.168.5.255



allow-hotplug enp2s0
auto enp2s0
iface enp2s0 inet static
address 192.168.5.111
netmask 255.255.255.0
gateway 192.168.5.5
dns-nameserver 8.8.8.8 8.8.4.4 

route给出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use      Iface
default         192.168.5.5     0.0.0.0         UG    0      0        0     enp2s0
192.168.5.0     *               255.255.255.0   U     0      0        0 enp2s0
192.168.5.0     *               255.255.255.0   U     0      0        0 enp2s8

ip route给出:

default via 192.168.5.5 dev enp2s0 onlink 
192.168.5.0/24 dev enp2s0  proto kernel  scope link  src 192.168.5.111 
192.168.5.0/24 dev enp2s8  proto kernel  scope link  src 192.168.5.1 linkdown 

我无法从界面访问互联网enp2s8.ping -I enp2s8 google.com给出:

PING google.com (202.51.65.52) from 192.168.5.1 enp2s8: 56(84) bytes of data.
From olerouter.olenepal.local (192.168.5.1) icmp_seq=1 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=2 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=3 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=4 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=5 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=6 Destination Host Unreachable
From olerouter.olenepal.local (192.168.5.1) icmp_seq=7 Destination Host Unreachable

ping -I enp2s0 google.com 输出:

PING google.com (202.51.67.32) from 192.168.5.111 enp2s0: 56(84) bytes of data.
64 bytes from cache.google.com (202.51.67.32): icmp_seq=1 ttl=59 time=1.45 ms
64 bytes from cache.google.com (202.51.67.32): icmp_seq=2 ttl=59 time=1.32 ms

我是 UFW 新手,无法在接口之间转发 IP。提前致谢

答案1

通过混淆真实 IP 地址并192.168.5.0/24在 和 上使用相同的网络enp2s8enp2s0您的问题会变得有些混乱。但是,一旦您在 上配置了正确的网络enp2s0,启用 IPv4 转发 ( sysctl -w net.ipv4.ip_forward=1) 并使用 来配置 SNAT(来自您192.168.5.0/24网络的数据包上的源 IP 需要更改为 上配置的可公开路由的 IP 地址enp2s0iptables,您就可以开始了。

相关内容