有没有办法netcat
从任何 ip:port 接收 UDP 数据包?我不希望它在第一个数据包到达时绑定到特定主机。
我可以考虑替代方案,但它们必须是 bash 友好的(允许管道)。
答案1
如果您在 Linux 上执行此操作,则可以使用 REDIR 目标设置 iptables 规则。只需将所有 UDP 流量重定向到单个端口,然后使用 netcat 监听该端口即可。
答案2
如果没有 root 权限,您想要实现的目标是不可能的。
答案3
和一些 nc
版本,可以指定一个-k
选项:
-k 强制 nc 在当前连接完成后继续监听另一个连接。如果未使用 -l 选项使用此选项,则会出现错误。 与 -u 选项一起使用时,服务器套接字未连接,并且可以接收来自多个主机的 UDP 数据报。