2011-11-25 89 views
2

我用下面的代码接收连接:socat:让发件人的IP地址

socat TCP-LISTEN:4000,fork EXEC:"./myscrpit"

我需要有一个发件人的IP地址在我的剧本,但SOCAT_PEERADDR没有设置,是什么问题?

+0

向我们展示脚本(至少是打印'SOCAT_PEERADDR'的部分)。 – cnicutar

+0

为解决这个问题我的脚本只是打印'SOCAT_PEERADDR': ' echo $ SOCAT_PEERADDR' – Shahryar

+0

那么它适用于我,所以一定有东西了。你确定达到了这条线吗?你正在使用哪个版本(我正在使用'1.7.1.3-3')。 – cnicutar

回答

4

使用pktinfo选项TCP-LISTEN因此使用下面的代码:

socat TCP-LISTEN:4000,pktinfo,fork EXEC:"./myscrpit

0

只为信息,而不是答案。该命令对我的作品:

socat tcp-listen:12345 exec:./script 

但该命令没有:

socat exec:./script tcp-listen:12345 

希望这个信息帮助。对我而言,如果地址对不起作用,交换对的顺序可能会起作用。

+0

好吧,如果你的./script不吐出任何东西到STDOUT那么就没有任何交流 – JSmyth