Я не думаю, что у ruby есть стандартный API для этого, но при некоторых предположениях это должно быть достаточно надежно для разных платформ:
require 'socket'
Socket::getaddrinfo(Socket.gethostname, 'echo', Socket::AF_INET).map { |x| x[3] }
Здесь мы предполагаем довольно много вещей, таких как машина с локальным именем хоста, указывающая на правильные IP-адреса. Таким образом, это определенно не совсем надежно, но оно не зависит от платформы и работает на общих настройках.
Редактировать: Если вы решите приступить к разбору ifconfig, подумайте о разветвлении ruby-ifconfig . Он заявляет, что делает это на большинстве платформ, отличных от Windows.