如何使用netcat将一个字节符号发送到服务器套接字



已经有一个通过套接字工作的服务器服务,我想通过netcat测试它。我使用的是Mac OS X Lion。目前,我可以通过端口连接到服务器,发送数据包,但数据包包含错误的值。以下是详细信息:

我需要将"m"符号发送到服务器,服务器将返回00000000,一个零字节作为响应。服务器人员告诉我,当我发送"m"时,服务器会收到"A0",当我发出"109"时,它会收到"313039A"。如何定义发送格式或其他什么,我只需要发送"m"(01101101)?

您可以使用只发送"m"

echo -n 'm' | nc <server> <port>

你可以很容易地检查你在本地机器上发送的内容:

# in one Terminal start the listener:
$ nc -l 1234 | hexdump -C
00000000  6d                                                |m|
00000001
# in other Terminal send the packet:
$ echo -n 'm' | nc 127.0.0.1 1234

nc将愉快地发送/接收NUL字节-这没有问题:

# sending side
$ echo -n X | tr X '00' | nc 127.0.0.1 1234
# receiving side
$ nc -l 1234 | hexdump -C
00000000  00                                                |.|
00000001

最新更新