网络工具中的“屠龙宝刀”了解一下?
例如需要扫描某个机器上21-30哪些端口是开放的: $ nc -n 127.0.0.1 -z 1230-1234 -v nc: connect to 127.0.0.1 port 1230 (tcp) failed: Connection refused nc: connect to 127.0.0.1 port 1231 (tcp) failed: Connection refused nc: connect to 127.0.0.1 port 1232 (tcp) failed: Connection refused nc: connect to 127.0.0.1 port 1233 (tcp) failed: Connection refused Connection to 127.0.0.1 1234 port [tcp/*] succeeded! 其中-n说明直接使用ip地址,而不使用域名,-z指定端口范围,-v输出详细信息。从结果就可以看到,1234端口是可连接的。 TCP/UDP连接测试 当你在学习TCP相关的内容时,是否想着如何自己实践观察里面的状态或者数据包?虽然推荐自己去写一个TCP连接的服务端-客户端程序,但是也可以利用nc命令来完成,例如,在一个终端中输入如下内容: $ nc -l 1234 hello 编程珠玑 表明在1234端口监听,然后可以在另外一个终端进行连接; $ nc 127.0.0.1 1234 hello 编程珠玑 连接本地地址1234端口,这个过程中就可以抓包,分析TCP的三次握手了。 除此之外,你还可以在建立好的连接之间发送消息(简单的聊天功能),让你分析更多! 默认情况,它创建的是TCP连接,而使用-u(UDP)参数可以测试UDP连通性。 $ nc -v -u 182.3.226.35 80 Connection to 182.3.226.35 80 port [udp/http] succeeded! 除此之外,还有很多参数用于调试,例如: -b 允许广播消息 -D 开启socket调试模式 -d 禁止从标准输入读取内容 -k 客户端退出后,保持连接 -v 显示详细信息 由于在后面的文章中还会借助nc来说明,因此这里不详解介绍。 (编辑:淮北站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |