我正在管理 SSH 服务器,并尝试通过路由器配置端口转发,以便访问子网外的内容。服务器位于子网 IP 地址,192.168.86.97
但是,当我尝试将路由器配置为端口转发到此 IP 或除 之外的任何 IP 时192.168.0.X
,我收到错误
内部 IP 地址不在 LAN 内。
为了解决这个问题,我尝试使用以下方法为设备分配一个范围内的静态 IP 192.168.0.X
:
sudo ip address add 192.168.0.97/24 dev eno1
但是,这个 IP 地址分配似乎没有反映在服务器本身以外的任何其他机器上。也就是说,服务器可能ping 自身,但192.168.0.97
子网上没有其他设备可以 ping 通192.168.0.97
。我想解决这个问题,我的问题是
192.168.86.97
内部IP地址不在LAN内是什么意思?- 我如何为这台机器分配一个范围内的 IP 地址
192.168.0.X
,以便端口转发正常工作?
我尝试将路由器的 LAN 更改为192.168.86.X
,但这只会使网络上的所有 IP 地址跳转到192.168.87.X
。执行此操作后,以下是这些命令的结果
ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
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: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 30:9c:23:df:3a:f9 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.97/24 brd 192.168.0.255 scope global eno1
valid_lft forever preferred_lft forever
inet 192.168.87.32/24 brd 192.168.87.255 scope global noprefixroute eno1
valid_lft forever preferred_lft forever
inet6 fe80::d97d:409f:4793:c98e/64 scope link
valid_lft forever preferred_lft forever
3: wlp26s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether 30:24:32:b8:4d:6d brd ff:ff:ff:ff:ff:ff
ip route show
default via 192.168.87.1 dev eno1 proto dhcp src 192.168.87.32 metric 202
192.168.0.0/24 dev eno1 proto kernel scope link src 192.168.0.97
192.168.87.0/24 dev eno1 proto dhcp scope link src 192.168.87.32 metric 202
答案1
检查您的路由器和服务器之间是否有其他设备。
原来,路由器和服务器之间有一个无线信号扩展器。路由器分配的 IP 地址在 范围内192.168.0.X
,但信号扩展器分配的 IP 也在 范围内192.168.86.X
。这就是设备 IP 没有分配到路由器 LAN 的原因。
为了彻底解决问题,我只是将路由器配置为将端口转发到信号扩展器,然后将信号扩展器配置为转发该端口再次到服务器。