通过 xinetd 从 Ruby 脚本获取客户端 IP

发布于 2024-09-16 00:17:28 字数 125 浏览 10 评论 0原文

如何从 xinetd 通过流套接字启动的 Ruby 脚本中获取客户端 IP 地址? 在 PHP 中,我只使用 stream_socket_get_name(STDIN, true);

提前致谢!

How can I get the client IP Address from inside a Ruby script that is launched by xinetd through a stream socket?
In PHP I would just use stream_socket_get_name(STDIN, true);

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笔芯 2024-09-23 00:17:28

经过大量搜索解决方案,甚至尝试在 Freenode 上的 #ruby 频道上询问并被完全忽略后,我终于找到了解决方案:

def to_ip(addr)
  (4...8).map{|x|addr[x]}.join('.')
end

socket = Socket.for_fd(STDIN.fileno)
ip = to_ip(socket.getpeername)

希望这对某人有帮助!

After searching a lot for the solution, and even trying to ask on the #ruby channel on Freenode and being completely ignored, I've finally found the solution:

def to_ip(addr)
  (4...8).map{|x|addr[x]}.join('.')
end

socket = Socket.for_fd(STDIN.fileno)
ip = to_ip(socket.getpeername)

Hope this helps someone!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文