为什么我无法在 Ubuntu 上 ping 端口 443?

Joã*_*iel 4 linux firewall iptables ping

我已经通过iptables以下方式打开了 443 端口:

pkts bytes target prot opt in  out source     destination
  45  2428 ACCEPT all  --  lo  *   0.0.0.0/0  0.0.0.0/0
   6  1009 ACCEPT tcp  --  *   *   0.0.0.0/0  0.0.0.0/0 tcp dpt:80
 141 10788 ACCEPT tcp  --  *   *   0.0.0.0/0  0.0.0.0/0 tcp dpt:22
   0     0 ACCEPT tcp  --  *   *   0.0.0.0/0  0.0.0.0/0 tcp dpt:80
   0     0 ACCEPT tcp  --  *   *   0.0.0.0/0  0.0.0.0/0 tcp dpt:443
   7  1140 ACCEPT all  --  *   *   0.0.0.0/0  0.0.0.0/0 state RELATED,ESTABLISHED
   6   360 DROP   all  --  *   *   0.0.0.0/0  0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)

它正在侦听netstat -a指示:

Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:6311                  *:*                     LISTEN     
tcp        0      0 *:ssh                   *:*                     LISTEN     
tcp        0      0 gauss:ssh               ommited                 ESTABLISHED
tcp        0      0 gauss:ssh               ommited                 ESTABLISHED
tcp6       0      0 localhost:8005          [::]:*                  LISTEN     
tcp6       0      0 [::]:8009               [::]:*                  LISTEN     
tcp6       0      0 [::]:www                [::]:*                  LISTEN     
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN     
tcp6       0      0 [::]:https              [::]:*                  LISTEN     
udp        0      0 *:mdns                  *:*                                
udp        0      0 *:52703                 *:*                                
udp6       0      0 [::]:42168              [::]:*                             
udp6       0      0 [::]:mdns               [::]:*   
Run Code Online (Sandbox Code Playgroud)

但是我无法 ping 端口 443:

PING 443 (0.0.1.187) 56(124) bytes of data.
^C
--- 443 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6006ms
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?

Cho*_*er3 29

ping 实用程序执行它应该做的事情,使用 ICMP 访问 ping 接口,您不能只用它 ping 任何您喜欢的端口。我确信有一百万种方法可以做到这一点,但大多数人只是使用“telnet IP 端口”,即“telnet 1.2.3.4 25”来测试连接。

  • ^--这个。telnet 工作。tcping 也是如此 (2认同)

use*_*517 18

您无法 ping 端口。发生的事情是 443 正在转换为 IP 地址,而 ping 正在尝试联系该地址 (0.0.1.187)。


Jef*_*and 8

PING 443 (0.0.1.187) 56(124) 字节数据。

请注意,上面的 IP 地址是从数字 443 (1 x 256 1 + 187 x 256 0 = 443) 解释的。

ICMP(其中ping的一部分)是它自己的协议,位于 IP 之上。UDP/IP、TCP/IP 和 ICMP/IP。ICMP 协议中不涉及端口,因此命令行上没有端口号选项。

有一些 TCP ping 应用程序将通过 TCP 执行类似的功能,您可能需要查看这些应用程序。TCP 端口或服务的手动检查通常使用telnetnc(netcat) 完成。


Rob*_*obW 7

尝试使用 NMap 进行端口 ping。

nmap -p 443 10.4.0.197

Starting Nmap 5.61TEST1 ( http://nmap.org ) at 2011-12-13 13:19 Pacific Standard Time
Nmap scan report for somecomputer (10.4.0.197)
Host is up (0.00s latency).
PORT    STATE  SERVICE
443/tcp closed https

Nmap done: 1 IP address (1 host up) scanned in 0.64 seconds
Run Code Online (Sandbox Code Playgroud)


Wes*_*ley 6

您是否考虑过不能使用ICMP来测试与 TCP/IP 端口的连接性?

使用 telnet 或 nmap 之类的工具来测试端口的打开或关闭状态。下面是一个使用 Telnet 测试 VMware 连接性的示例这是有关使用 nmap 进行端口扫描的一些信息