我通过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
它正在监听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 [::]:*
但是我不能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
这是怎么回事?
ping实用程序做它应该做的事情,使用ICMP命中ping接口,你不能ping任何你喜欢的端口。 我确信有一百万种方法可以做,但大多数人只是使用“telnet IP端口”,即“telnet 1.2.3.4 25”来testing连接。
你不能ping通端口。 发生什么事是443被转换成IP地址,并且ping正在尝试联系那个地址(0.0.1.187)。
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执行类似的function,你可能想看看这些。 手动审查TCP端口或服务通常使用telnet或nc (netcat)完成。
尝试使用您的端口ping的NMap。
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
你是否认为ICMP不能用于testing连接到TCP / IP端口?
使用诸如telnet或nmap之类的工具来testing端口的打开或closures状态。 以下是使用TelnettestingVMware连接的示例 。 以下是有关使用nmap进行端口扫描的一些信息 。
这不是完全可以做到的。 ping发送ICMP回应请求数据包!
你想要的可能是telnet xxxx 443 ,其中xxxx是你的主机名(抄送到telnet然后exit )。
我读错了吗,还是只在端口443上监听IPv6?
我们安全地假设你正在尝试build立一个Web服务器? 如果您尝试设置apache或其他Web服务器,则不会监听端口443的ipv4stream量。 要么它configuration不正确,要么你没有运行守护进程。
我强烈build议你参加基本的networking课程(没有任何意图)。 networkingpipe理是一项高度技术性的工作,应该认真对待。
ping生成ICMP回显请求数据包,但ping命令不适用于上层networking层。
“端口”的概念只与UDP和TCP协议有关。 TCP / IP堆栈使用端口作为提示解复用IP数据包数据并将其传送到正确的应用程序。
至于你想做什么,我个人使用nc -v hostname port命令。
问候,
如果你想testing端口是否打开,你可以使用telnet。 就像
telnet 192.168.2.22 443