Linux网络之NC(netcat网猫)

NC 网猫

nc的参数:
**
-g<网关> 设置路由器跃程通信网关,最多可设置8个。
-G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
-h 在线帮助。
-i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
-l 使用监听模式,管控传入的资料。
-n 直接使用IP地址,而不通过域名服务器。
-o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
-p<通信端口> 设置本地主机使用的通信端口。
-r 乱数指定本地与远端主机的通信端口。
-s<来源位址> 设置本地主机送出数据包的IP地址。
-u 使用UDP传输协议。
-v 显示指令执行过程。
-w<超时秒数> 设置等待连线的时间。
-z 使用0输入/输出模式,只在扫描通信端口时使用

实际开发中的问题

当 服务端为TCP协议 端口为8900 使用nc向服务端发包(任意数据)时, 服务端识别的数据为字符串
例子:
使用netty本地调试演示一下抓取的数据区别, 实际上不管是在win还是linux 直接发送数据都会被默认为字符串
发送的数据:十六进制的78780d0a 转为 bytes 应为 [120, 120, 13, 10]
但服务器端解析的却是ascii码,可以看出当成字符串来处理了。
在这里插入图片描述

如何解决nc发送16进制不被识别的解决办法?
linux系统:使用echo -ne ‘\x’ 转义字符 \x 来发送到对应的服务端 即可解决。
echo -ne ‘\x78\x78\x0d\x0a’ | nc 127.0.0.1 8900
windows系统:none 暂时没有找到

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值