如果我在WireShark 捕获运行(捕获过滤器 = )期间在命令下方运行这些NetCat(根本没有错误消息):udp dst port 4000
luis@Zarzamoro:~$ echo "Hello" | nc -w1 -4u 255.255.255.255 4000
luis@Zarzamoro:~$ echo "Hello" | nc -w1 -4u 255.255.255.1 4000
luis@Zarzamoro:~$ echo "Hello" | nc -w1 -4u 192.168.11.255 4000
luis@Zarzamoro:~$ echo "Hello" | nc -w1 -4u 192.168.11.100 4000
Run Code Online (Sandbox Code Playgroud)
这是捕获的数据(注意缺少的两个 netcat命令):
正如我总结的那样,NetCat会忽略发送到广播(xxx255) 网络地址的任何数据(没有错误 :-P )。
为什么会这样?
附加数据:
这是我的完整内容ifconfig:
luis@Zarzamoro:~$ sudo ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:ef:bb:aa
inet addr:192.168.11.140 Bcast:192.168.11.255 …Run Code Online (Sandbox Code Playgroud) 按照此Bash 教程,我已成功使用此方法获取发出简单命令的网页代码:
$ exec 3<>/dev/tcp/www.google.com/80
$ echo -e "GET / HTTP/1.1\n\n" >&3
$ cat <&3
Run Code Online (Sandbox Code Playgroud)
确实,我得到了基本的 Google html 站点代码:
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Location: http://www.google.es/?gfe_rd=cr&ei=HsiuVafkLpGt8weX7o-YAg
Content-Length: 258
Date: Tue, 21 Jul 2015 22:30:54 GMT
Server: GFE/2.0
Alternate-Protocol: 80:quic,p=0
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.es/?gfe_rd=cr&ei=HsiuVafkLpGt8weX7o-YAg">here</A>.
</BODY></HTML>
Run Code Online (Sandbox Code Playgroud)
这个技巧对我很有用。比如我已经成功用它来发送Magic Packets(Wake on LAN)(类似的例子)。
哪些 shell 允许通过使用简单的命令和重定向程序将数据直接发送到网络?
当然,除了 Bash。
此信息用于了解这些系统是否具有此功能: