移动设备处于 4g 网络时如何 ping 通

移动设备处于 4g 网络时如何 ping 通

我只是想验证我的移动设备通过 4g 连接到互联网时哪些端口是打开的,但简单地对其“4g ip”地址进行 netcat 或 ping 都不起作用。当通过 wifi 连接时,ping 和 netcat 到其内部 ip 地址工作正常,而且我也能 ping 外部 ip 地址,所以问题不在于我自己的连接。

$ ping 192.168.1.100 
PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=1 ttl=64 time=248 ms
64 bytes from 192.168.1.100: icmp_seq=2 ttl=64 time=32.6 ms

从 whatismyip.com 上获取了手机的 IP 地址,然后 ping 了一下,我得到了

$ ping -4 82.132.xxx.xxx
PING 82.132.xxx.xxx (82.132.xxx.xxx) 56(84) bytes of data.
^C
--- 82.132.xxx.xxx ping statistics ---
23 packets transmitted, 0 received, 100% packet loss, time 22532ms

仅显示 ping google 工作正常:

$ ping -v -4 google.com
ping: socket: Permission denied, attempting raw socket...
PING google.com (216.58.204.46) 56(84) bytes of data.
64 bytes from lhr25s12-in-f14.1e100.net (216.58.204.46): icmp_seq=1 ttl=53 time=3.71 ms
64 bytes from lhr25s12-in-f14.1e100.net (216.58.204.46): icmp_seq=2 ttl=53 time=3.07 ms

我猜即使您知道它的 IP 地址,也不可能简单地路由到任何移动设备,那么还有其他选择吗?

答案1

许多移动运营商都实施了 CGNAT,网站看到的外部地址不属于设备 - 它属于 ISP 运行的 NAT 网关。因此,除非您亲眼看到,否则不要相信该地址在设备本身上

最重要的是,大多数移动运营商不提供专用 IP 地址——他们执行“1:多”NAT,而不仅仅是 1:1 NAT,并且外部地址同时由多个客户使用(就像您的家用路由器在所有 LAN 设备之间共享您的外部地址一样)。

即使是那些为每个客户分配一个地址(无论是直接地址还是 1:1 NATed 地址),通常将其置于防火墙后面,以阻止所有传入连接。这样做有两个目的 - 防止客户在其 4G 连接上托管服务(这通常是其服务条款所不允许的),并防止各种僵尸网络扫描和未经请求的连接耗尽设备的电池。

我也能 ping 外部 IP 地址

大多数时候,您仅 ping NAT 网关,而不是设备本身。

相关内容