情况:本地 PC 在网络 A 中,而我的 Pi 在网络 B 中。网络 A 和 B 连接到路由器 B 的两个不同接口(eth1、eth0)。
PC (1.1.1.10)----- switch-----Router A (no Admin)---- INTERNET
|
/----/
|
eth1(1.1.1.20)-|Router B (i am Admin)|-(2.2.2.1)eth0------PI-server(2.2.2.2)
我在路由器 B 上获得了一个端口转发规则:1.1.1.20 端口:1000 --> 2.2.2.2:22
如果我尝试从 PC 连接:
ssh [email protected] -p 1000
过了一会儿我才发现连接超时了。
我在 sshd_config 中进行了设置GatewayPorts yes
(不确定是否有必要)。当我尝试连接时,我可以看到(在路由器 B 的 Web GUI 中)相同的流量进入网络接口 eth0。
我的猜测是:我可以访问 Pi,但 Pi 的数据包不会返回到我的 PC。
当然,并非所有 IP 地址都是真实的。
啊,一个想法。在端口转发规则中,eth0 设置为 LAN,eth1 设置为 WAN,但 eth1 并不是真正的 WAN,但我必须选择 WAN 和 LAN,没有像 LAN 到 LAN 这样的选项。也许这是个问题。
(如果此信息有用,可以通过互联网通过其 IP 1.1.1.10 找到该电脑)
有人能帮我吗?我希望我涵盖了所有必要的信息,这是我第一次听到 :)
答案1
感谢大家的快速回复。现在可以正常工作了。解决方案是将路由器 B 重置为出厂设置。然后我使用向导将 B 设置为普通互联网路由器,并像以前一样添加端口转发规则。不确定问题是什么,但现在可以正常工作了。
特别感谢 Nikita 提供的 tcpdump 提示。这对我以后非常有用。