为什么在这种情况下静态路由会失败?

为什么在这种情况下静态路由会失败?

我正在尝试联网并尝试使以下操作正常工作。Computer A有两个接口,一个连接到Computer BpfSense 路由器,另一个连接到 pfSense 路由器。我想配置Computer A为充当路由器。

Computer B有一个以太网接口(eth0),配置了 IP 地址 192.168.77.1/32。然后我添加了一条默认路由:

ip route add default dev eth0

Computer B插在 的 eth1 上Computer A。此接口没有分配 IP 地址。我启用 IP 转发并添加路由:

sysctl -w net.ipv4.ip_forward=1
ip route add 192.168.77.1/32 dev eth1

在 pfSense 路由器上,我添加了一条防火墙规则以允许流量source: 192.168.77.0/24, destination: any。然后我添加了一条路由:

route add 192.168.77.0/24 10.0.0.2

在此处输入图片描述

在我看来,我认为这应该可行。观察:

  1. Computer A可以 ping Computer B192.168.77.1
  2. Computer B可以 ping Computer A10.0.0.2
  3. Computer B不是对互联网上的任意内容进行 ping
  4. Computer B不是在 10.0.0.1 处 ping pfSense
  5. pfSense 可以不是Computer B在 192.168.77.1 上进行 ping

附加信息:

路由表Computer B

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         0.0.0.0         0.0.0.0         U         0 0          0 eth0

路由表Computer A

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG        0 0          0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U         0 0          0 eth0
192.168.77.1    0.0.0.0         255.255.255.255 UH        0 0          0 eth1

pfSense的路由表:

Destination        Gateway            Flags     Netif Expire
default            xxx.xxx.xxx.xxx    UGS      vtnet0
10.0.0.0/24        link#2             U        vtnet1
10.0.0.1           link#2             UHS         lo0
192.168.77.0/24    10.0.0.2           UGS      vtnet1
xxx.xxx.xxx.xxx/20 link#1             U        vtnet0
xxx.xxx.xxx.xxx    link#1             UHS         lo0
127.0.0.1          link#4             UH          lo0

答案1

我要尝试的第一件事是:

计算机B插在计算机A的eth1上。此接口没有分配IP地址。

通常您会为该接口分配一个 IP 地址(例如 192.168.77.2/24),并且还要确保计算机 A 上的 eth0 具有适当的子网,例如 192.168.77.1/24。

即使子网中只有两台计算机,它仍然是一个子网。

它实际上可能在您的不寻常的设置(或变体)中起作用,但由于它不起作用,请先尝试常规设置。

相关内容