Как узнать IP-адрес в Linux | SecureFlow

Как узнать IP-адрес в Linux

Постер статьи

Содержание

Зачем нужно знать IP-адрес в Linux?

IP-адрес — это уникальный сетевой идентификатор устройства. Он необходим для:

  • подключения к серверу по SSH;
  • настройки веб-серверов, баз данных и других сетевых служб;
  • диагностики сетевых проблем;
  • настройки фаерволов, маршрутизации и NAT;
  • пентеста и анализа трафика.

В этом руководстве я покажу, как узнать IP-адрес в Linux — как локальный (внутренний), так и внешний (публичный), используя простые команды. Инструкции подходят для всех популярных дистрибутивов: Ubuntu, Debian, CentOS, Arch Linux, RedOS, ALT Linux и других.

Как быстро посмотреть IP-адрес в Linux (локальный)

Самый быстрый способ узнать IP-адрес — команда ip:

ip a

или более явно:

ip addr show

В выводе найди строку вида:

inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0

Твой IP — это 192.168.1.100.

Основные команды для просмотра IP-адреса

ip a — современный и универсальный способ

ip a
  • Показывает все сетевые интерфейсы: eth0, wlan0, lo и т.д.
  • Строка inet — это IPv4-адрес, inet6 — IPv6.

Если нужен только IPv4 без лишнего:

ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}'

Замените eth0 на нужный интерфейс: wlan0, ens33 и т.д.

hostname -I — самый короткий способ

hostname -I
  • Выводит только IP-адреса, без лишнего текста.
  • Удобно использовать в скриптах.

Обычно показывает локальный IP, а также IP Docker-интерфейсов.

ip route get — IP-адрес активного интерфейса

ip route get 1.1.1.1

Пример:

1.1.1.1 via 192.168.1.1 dev eth0 src 192.168.1.100 uid 1000

Значение после src — это твой IP. Полезно, если у машины несколько интерфейсов: показывает, с какого именно будет исходить трафик.

ifconfig — устаревшая, но ещё используемая команда

ifconfig

По умолчанию не установлена в новых дистрибутивах. Установи net-tools

Как узнать внешний IP-адрес в Linux (через интернет)

Чтобы узнать внешний (публичный) IP-адрес, с которым ты выходишь в интернет:

curl icanhazip.com

Если curl не установлен:

wget -qO- icanhazip.com

Скрипты и команды для продвинутых пользователей

🔸 Скрипт: вывод всех IP-адресов по интерфейсам

ip -o -4 addr list | awk '{print $2 ": " $4}'

🔸 Получить IP-адрес конкретного интерфейса

ip -4 addr show dev eth0 | grep inet | awk '{print $2}' | cut -d/ -f1

Внешний IP через dig

dig +short myip.opendns.com @resolver1.opendns.com

Часто задаваемые вопросы (FAQ)

🔹 Какие IP-адреса считаются внутренними (локальными)?

IP внутри сетей:

  • 10.0.0.0/8
  • 172.16.0.0 – 172.31.255.255
  • 192.168.0.0/16

Они используются внутри локальных сетей и не видны из интернета.

🔹 Как проверить доступность IP-адреса?

ping 192.168.1.1

Если получаешь ответы — хост доступен. Если нет — возможны проблемы с сетью или фаерволом.

Вывод

Узнать IP-адрес в Linux — задача на 5 секунд, если знаешь нужную команду. Главное — понимать, какой IP тебе нужен:

  • Локальный — для работы внутри сети.
  • Внешний — для подключения извне.
  • По конкретному интерфейсу — если используется несколько сетей или Docker.

🧠 Шпаргалка по командам

Что нужно Команда
Все IP-адреса ip a
Только IPv4 ip -4 a
IP по интерфейсу (eth0) ip -4 addr show dev eth0
Активный IP ip route get 1.1.1.1
Внешний IP (curl) curl icanhazip.com
Только IP (коротко) hostname -I

Если тебе понравилась статья — заходи на SecureFlow.ru и читай другие полезные гайды по Linux, DevOps и информационной безопасности!