背景: 在linux系统上排查问题,常常需要测试端口或网络的联通性。在网上找到的教程都不是很靠谱,通过大量的查询,自己总结了比较靠谱的方法。
tcp 协议测试
通常有两种方法: telnet [ 目标ip 端口 ] 和nc -v [ 目标ip 端口 ]
如果服务器有已启用的端口,例如8080 可以直接使用测试 ,如果服务器上没有端口,可以使用 nc -tl [ 端口 ] 在服务端启动端口
telnet [ 目标ip 端口 ]
客户端用 telnet向服务端发送TCP消息 111 和 adasdsad 两条消息 [root@localhost ~]# telnet 192.168.160.129 6000 Trying 192.168.160.129... Connected to 192.168.160.129. Escape character is '^]'. 111 adasdsad 服务端设置端口接收消息 [root@localhost ~]# nc -tl 6000 111 adasdsad
nc -v [ 目标ip 端口 ]
客户端用nc命令向服务端发送TCP消息 123 和 acfggbghj [root@localhost ~]# nc -v 192.168.160.129 6000 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.160.129:6000. 123 acfggbghj 服务端设置端口接收TCP消息 [root@localhost ~]# nc -tl 6000 123 acfggbghj
UPD协议测试
客户端用nc命令向服务端发送udp消息 1234567 和 abcd [root@localhost ~]# nc -u 192.168.160.129 6000 1234567 abcd 服务端设置端口接收UDP消息 [root@localhost ~]# nc -ul 6000 1234567 abcd