В данной инструкции показано, как получить IP адрес из доступных локальных сетевых интерфейсов.

Как выявить локальный IP адрес в Golang?

1. Создайте файл interfaces.go со следующим содержимым:

Форум Гоферов

Мы работаем над форумом для программистов на Golang. Очень нужны модераторы которые хотят помочь с ответами для новичков и помочь в развитии Go-сообщества.

Go на Форум

Уроки, статьи и Видео

Мы публикуем в паблике ВК и Telegram качественные обучающие материалы для быстрого изучения Go. Подпишитесь на нас в ВК и в Telegram. Поддержите сообщество Go программистов.

Go в ВК Go в Telegram

2. Запустите код через go run interfaces.go в главном терминале;
3. Посмотрите на результат:

Сетевой пакет net содержит функцию Interfaces, которая возвращает список сетевых интерфейсов как срез структуры Interface. В структуре Interface есть метод Addrs, который возвращает список доступных IP-адресов текущего сетевого интерфейса из цикла for. В таком случае можно вывести на экран список IP-адресов по их сетевым интерфейсам.

Другой альтернативой является использование функции InterfaceAddrs из пакета net, что предоставляет срез структуры, которая имплементирует интерфейс Addrs. Вам предоставляются методы для получения нужной информации.