PQ
PQ.Hosting

Валюта

Как узнать внутренний IP-адрес в Linux: Руководство для пользователей VPS 2026

Автор
PQ
24 февраля 2026
5 мин чтения
108 просмотров
Как узнать внутренний IP-адрес в Linux: Руководство для пользователей VPS 2026

Первое, что нужно после подключения к новому серверу — понять, какие IP-адреса у него есть и на каких интерфейсах. Внешний IP обычно сразу виден в панели управления хостинга, а вот внутренний — тот, что используется для связи внутри сети, — нужно смотреть прямо в системе.

Разберём все рабочие способы: от одной быстрой команды до детального просмотра всех интерфейсов.

Внутренний IP и внешний — в чём разница?

Прежде чем к командам — коротко о терминах, чтобы не было путаницы.

Внешний (публичный) IP — адрес, по которому сервер виден в интернете. Именно его видит любой ресурс, к которому обращается машина. На VPS это обычно тот IP, который выдаёт хостинг при заказе.

Внутренний (частный) IP — адрес интерфейса внутри локальной или виртуальной сети. Он используется для связи между серверами в одной инфраструктуре, внутри контейнеров, между нодами кластера и так далее. В интернете такой адрес не маршрутизируется.

Стандартные диапазоны частных адресов (RFC 1918):

Диапазон Маска Количество адресов
10.0.0.0 — 10.255.255.255 /8 ~16 млн
172.16.0.0 — 172.31.255.255 /12 ~1 млн
192.168.0.0 — 192.168.255.255 /16 ~65 тыс.

Если адрес попадает в один из этих диапазонов — это внутренний IP. Всё остальное — публичный.

Способ 1. hostname -I — самый быстрый

Если нужен просто список IP-адресов без лишних деталей:

hostname -I

Выводит все IP-адреса машины в одну строку через пробел — и IPv4, и IPv6. Никаких таблиц, никакого форматирования. Удобно, когда нужно быстро скопировать адрес или использовать в скрипте.

Способ 2. ip addr — полная информация об интерфейсах

Основной современный инструмент для работы с сетью в Linux. Команда ifconfig устарела и по умолчанию отсутствует в большинстве актуальных дистрибутивов — ip её полностью заменяет.

ip addr

или в сокращённой форме:

ip a

Вывод может выглядеть пугающе, но читается просто. Вот что важно:

  • lo — петлевой интерфейс (loopback), адрес 127.0.0.1. Это виртуальный интерфейс для связи процессов внутри самой машины, не сетевой.
  • eth0 или ens3, enp1s0 и подобные — основной сетевой интерфейс. Именно здесь будет реальный IP.
  • inet — IPv4-адрес интерфейса.
  • inet6 — IPv6-адрес.

Показать только IPv4-адреса

ip -4 addr

Показать только конкретный интерфейс

ip addr show eth0

Вытащить только адреса без лишнего текста

ip -4 addr show scope global | grep inet | awk '{print $2}'

Эта команда выводит только IP-адреса в формате адрес/маска для всех глобальных (не loopback) интерфейсов. Удобно для скриптов.

💡 Имя основного интерфейса на VPS зависит от гипервизора и дистрибутива. Чаще всего это eth0 или ens3. Посмотреть все интерфейсы: ip link show.

Способ 3. ip route — узнать IP через таблицу маршрутизации

Ещё один способ — посмотреть, с какого адреса уходит трафик по умолчанию:

ip route get 1.1.1.1

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

ip route

Эта команда выводит полную таблицу маршрутизации. Строка с default — маршрут по умолчанию; интерфейс в ней и есть основной сетевой.

Способ 4. nmcli — если используется NetworkManager

На серверах с Ubuntu Desktop или в конфигурациях, где установлен NetworkManager, удобно использовать nmcli:

nmcli device show

Выводит подробную информацию по каждому интерфейсу: IP-адрес, шлюз, DNS, статус соединения.

Если нужно только самое важное:

nmcli -g IP4.ADDRESS device show eth0

На большинстве «чистых» VPS NetworkManager не установлен, поэтому ip addr — надёжнее.

Способ 5. ifconfig — устаревший, но ещё встречается

ifconfig

На современных системах (Ubuntu 20.04+) ifconfig не установлен по умолчанию. Если он нужен:

sudo apt install net-tools

После установки команда покажет все интерфейсы. Строка inet — это IPv4-адрес, inet6 — IPv6. Функционально ifconfig уступает ip addr: меньше информации, нет поддержки некоторых современных типов интерфейсов.

💡 На новых серверах лучше сразу привыкать к ip addrifconfig в какой-то момент могут убрать совсем.

Как узнать внешний IP — для сравнения

Если нужно убедиться, какой IP видит внешний мир:

curl ifconfig.me

или

curl -s https://api.ipify.org

Обе команды обращаются к внешнему сервису и возвращают публичный IP — тот, что видит интернет. Это не внутренний адрес интерфейса, а то, что видно снаружи после NAT (если он есть).

Несколько интерфейсов — как разобраться

На VPS с несколькими сетевыми картами или с настроенными VLAN, туннелями, контейнерами — интерфейсов будет много. Чтобы получить только IPv4-адреса всех активных интерфейсов одной командой:

ip -4 addr show up | grep inet | awk '{print $NF, $2}'

Вывод покажет имя интерфейса и его адрес. Легко понять, что где.

Шпаргалка

Задача Команда
Быстро посмотреть все IP hostname -I
Полная информация по интерфейсам ip addr или ip a
Только IPv4 ip -4 addr
Конкретный интерфейс ip addr show eth0
Основной маршрут и интерфейс ip route
Только адреса без лишнего текста ip -4 addr show scope global | grep inet | awk '{print $2}'
Внешний IP curl ifconfig.me

Итог

Для повседневных задач достаточно двух команд: hostname -I — если нужен просто адрес, ip addr — если нужна полная картина по интерфейсам. ifconfig работает, но на новых системах его лучше не использовать.

Если сервер ещё не выбран — в каталоге PQ.Hosting можно подобрать VPS под нужную локацию и конфигурацию.

Поделиться статьей

Похожие статьи