Получение клиента IP от Ruby Script через Xinetd
Вопрос
Как я могу получить IP-адрес клиента из-за скрипта Ruby, который запускается Xinetd через розетку потока? В PHP я бы просто использовал stream_socket_get_name(STDIN, true);
Заранее спасибо!
Решение
После поиска много для решения, и даже пытаясь спросить на #Ruby Channel на Freenode и быть полностью игнорированным, я наконец нашел решение:
def to_ip(addr)
(4...8).map{|x|addr[x]}.join('.')
end
socket = Socket.for_fd(STDIN.fileno)
ip = to_ip(socket.getpeername)
Надеюсь, это поможет кому-то!
Не связан с StackOverflow