我正在设置一个嵌入式 Linux 系统并通过 SSH 访问它以用于开发目的。我设置了一个静态 IP 地址和一个 Dropbear SSH 服务器,两者似乎大部分都正常工作。
我可以使用设备的 IPv6 地址访问它,但使用 IPv4 地址时握手会超时。我尝试更改该地址以防它被盗用,但什么也没改变。我还尝试添加防火墙规则以确保 SSH 客户端不会被阻止。
我四处寻找可能导致这种情况的信息,但我能找到的最接近的信息是询问为什么 Dropbear 可以在 IPv4 上运行,但在 IPv6 上却不行。我遇到了相反的问题。我只需使用 IPv6 即可绕过该问题,但系统最终需要通过 HTTP 上的 Node.js 服务器进行访问。我不希望它在 URL 中要求 IPv6 地址。
我怀疑问题可能与地址范围有关,因为 IPv6 列为scope link
而 IPv4 列为scope global eth0
。(我使用以太网电缆将主板直接连接到计算机。)如果这确实是问题所在,有没有办法配置地址范围?我找不到有关该特定主题的任何信息。
相关内容如下:
~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0a:35:00:eb:e9 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.130/24 brd 192.168.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::20a:35ff:fe00:ebe9/64 scope link
valid_lft forever preferred_lft forever
~# ip route
default via 192.168.0.1 dev eth0
192.168.0.0/24 dev eth0 src 192.168.0.130
~# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0a:35:00:eb:e9 brd ff:ff:ff:ff:ff:ff
~# ip tunnel
~# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:ftp *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
getnameinfo failed
getnameinfo failed
tcp6 0 0 [UNKNOWN]:ssh [UNKNOWN]:1755 ESTABLISHED
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path