我在 192.168.2.x LAN2 内安装了 FreeBSD 9.3,它连接到 192.168.1.x LAN1(路由器 WAN IP 为 192.168.1.10)。
该 BSD 运行 SSH 和 FTP 服务。我可以从任何 LAN2 计算机使用这两种服务。但我无法从 LAN1 连接。
我认为问题不在于路由器设置,因为我在另一台 LAN2 机器上有 HTTP 和 FTP 服务器,并且所有服务器都可以从 LAN1 计算机访问,没有任何问题。
所有需要的端口都在路由器中转发。我可以使用 192.168.1.10:port(甚至从 LAN2)连接到另一个 LAN2 服务器。
我看到几个描述类似问题的线程(通常与 SSH 服务器有关),并尝试了我能找到的所有解决方案,但没有一个对我有用。
这些是来自以下的相关行/etc/rc.conf
:
ifconfig_em0="inet 192.168.2.8 netmask 255.255.255.0"
defaultrouter="192.168.2.1"
sshd_enable="YES"
ftpd_enable="YES"
ftpd_flags="-D -l"
更新
当我从 LAN1 电脑运行 Putty SSH 到 192.168.1.10:20022(转发到 192.168.2.8:22)时,它显示“网络错误:连接超时”消息。 Total Commander 的 FTP 连接显示:"Connect call failed!"
。从 LAN2 执行相同的操作会显示 FTP 主目录和 BSD 登录提示。
从 LAN1 到 192.168.1.10:20021 的命令行 FTP 显示 ftp: connect: unknown error number
。
对可访问的 FTP(另一个端口)执行相同的操作会显示:"220" messages (welcome and auth)
。我可以远程登录其他 FTP 和 HTTP。
cat /var/log/auth.log | grep sshd
基本上显示两种消息:
Server listening on 0.0.0.0 port 22 / :: port 22
Accepted / closed connection from 192.168.2.6 (another LAN2 pc)
sshd 未提及 LAN1 地址。
这是我从另一台 LAN2 电脑通过 SSH 连接时得到的结果:
root@bsdpc:/ # ifconfig
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 08:00:27:11:97:cf
inet 192.168.2.8 netmask 0xffffff00 broadcast 192.168.2.255
inet6 fe80::a00:27ff:fe11:97cf%em0 prefixlen 64 scopeid 0x1
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet 127.0.0.1 netmask 0xff000000
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
root@bsdpc:/ # sockstat
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
lpvoid sshd 1398 3 tcp4 192.168.2.8:22 192.168.2.6:1186
lpvoid sshd 1398 4 stream -> ??
root sshd 1395 3 tcp4 192.168.2.8:22 192.168.2.6:1186
root sshd 1395 5 stream -> ??
root ftpd 567 3 dgram -> /var/run/logpriv
root ftpd 567 5 tcp6 *:21 *:*
root ftpd 567 6 tcp4 *:21 *:*
smmsp sendmail 537 3 dgram -> /var/run/log
root sendmail 534 3 tcp4 127.0.0.1:25 *:*
root sendmail 534 4 dgram -> /var/run/logpriv
root sshd 531 3 tcp6 *:22 *:*
root sshd 531 4 tcp4 *:22 *:*
root syslogd 400 4 dgram /var/run/log
root syslogd 400 5 dgram /var/run/logpriv
root syslogd 400 6 udp6 *:514 *:*
root syslogd 400 7 udp4 *:514 *:*
root devd 310 4 stream /var/run/devd.pipe