- Как узнать IP адрес, используя командную строку Linux
- ifconfig уже устарел
- Определяем IP-адрес командой ip
- Определяем IP-адрес командой hostname
- Через графическую утилиту
- Как найти / получить свой IP-адрес в Linux
- Найдите свой частный IP-адрес
- Найдите свой публичный IP-адрес
- Выводы
- Как в линуксе узнать IP-адрес
- IP-address — что это?
- Внутренний IP-адрес в Линукс
- Локальный IP-адрес в Линукс
- Как узнать Внешний IP-адрес
- Заключение
- 7 сетевых Linux-команд, о которых стоит знать системным администраторам
- Команда ip
- Команда ifconfig
- Команда mtr
- Команда tcpdump
- ▍ Захват трафика, идущего к некоему хосту и от него
- ▍ Захват трафика, идущего в некую сеть и из неё
- ▍ Захват трафика, поступающего на некий порт и выходящего из некоего порта
- Команда netstat
- Команда nslookup
- Команда ping
- ▍ Destination Host Unreachable
- ▍ Request timed out
- ▍ Unknown host/Ping Request Could Not Find Host
- Итоги
Как узнать IP адрес, используя командную строку Linux
Рассмотрим, как узнать текущий IP-адрес системы Linux, используя командную строку.
ifconfig уже устарел
Раньше для просмотра текущих сетевых интерфейсов и их параметров (включая IP-адреса), использовалась команда ifconfig. Но она уже несколько лет как устарела, и в современных дистрибутивах Linux не поддерживается.
Вместо ifconfig рекомендуется использовать команду ip
Определяем IP-адрес командой ip
Чтобы определить IP-адрес вашего сетевого интерфейса можно использовать команду ip address (или эквивалентный вызов ip addr или просто ip a ).
В результате выполнения команды на экран будет выведен список текущих сетевых интерфейсов и их параметры. Первый интерфейс в списке обычно lo — это loopback интерфейс (нас он сейчас не интересует). Нас интересует Ethernet-интерфейс или WiFi-интерфейс (в зависимости от того, какое у вас подключение).
Ethernet интерфейсы обычно имеют имена вида enp2s0 или eth0, а WiFi-интерфейсы имеют имена вида wlp2s0 или wlan0 (цифры в названии могут отличаться).
Найдите интересующий вас интерфейс в списке. Его IP-адрес выводится на строке inet ..
В нашем примере это inet 192.168.2.2/24 . 192.168.2.2 — это IP-адрес. 24 — это маска подсети, соответствующая маске 255.255.255.0.
Определяем IP-адрес командой hostname
Воспользуемся командой hostname , чтобы вывести IP-адрес. Используем ключ -I
Команда выводит все сетевые адреса хоста (системы), кроме loopback интерфейса. Если у вас всего одно сетевое соединение, то, скорее всего, будет выведен один IP-адрес.
Через графическую утилиту
Хотя эта заметка рассматривает способы определения IP-адреса через командную строку, иногда проще посмотреть текущий IP-адрес через графические программы. В Ubuntu Linux это можно сделать в Параметрах системы в разделе Сеть .
Параметры→Сеть
Настройки сетевого интерфейса.
Источник
Как найти / получить свой IP-адрес в Linux
Знание IP-адреса вашего устройства важно при устранении неполадок в сети, настройке нового соединения или настройке брандмауэра.
IP-адреса можно разделить на две категории: публичные и частные. Общедоступный IP-адрес — это уникальный IP-адрес, к которому можно получить доступ из Интернета. Частные IP-адреса зарезервированы для внутреннего использования в вашей частной сети без прямого доступа к Интернету. Кроме того, существует два типа IP-адресов: IP версии 4 (IPv4) и IP версии 6 (IPv6).
В этой статье объясняется несколько различных методов определения публичных и частных IP-адресов системы Linux.
Найдите свой частный IP-адрес
Частные IP-адреса не маршрутизируются через Интернет и предназначены для работы только в локальной сети. Обычно частный IP-адрес назначается каждому устройству в вашей локальной сети вашим маршрутизатором. Это обеспечивает уникальный IP-адрес для всех устройств в локальной сети, таких как ваш телефон, ноутбук, смарт-телевизор, принтер, медиацентр и т. Д.
Устройства в локальной сети подключаются к Интернету через NAT (преобразование сетевых адресов).
Следующие диапазоны IPv4-адресов зарезервированы для частных сетей:
Вы можете определить частный IP-адрес вашей системы, запросив сетевой стек с такими командами, как ip , ifconfig или hostname .
В Linux стандартным инструментом для отображения и настройки сетевых интерфейсов является ip .
Чтобы отобразить список всех сетевых интерфейсов и связанных IP-адресов, введите следующую команду:
Результат будет выглядеть примерно так, как показано ниже. Выделен частный IP-адрес.
Вы также можете использовать следующие команды для отображения частного IP-адреса:
Найдите свой публичный IP-адрес
Общедоступный IP-адрес — это глобально маршрутизируемый IP-адрес, который назначается сетевому устройству и обеспечивает ему прямой доступ в Интернет. Они назначаются устройству его интернет-провайдером, и каждое устройство имеет уникальный общедоступный IP-адрес.
Общедоступные IP-адреса используются домашними маршрутизаторами, веб-серверами, почтовыми серверами и т. Д.
Определение общедоступного IP-адреса включает соединение с удаленным сервером по протоколу HTTP / HTTPS или DNS и получение IP-адреса из ответа удаленного сервера.
На настольных компьютерах самый простой способ узнать ваш общедоступный IP-адрес — это ввести в браузере «what is my ip»:
Если вы находитесь на автономном сервере Linux или хотите назначить IP-адрес переменной сценария оболочки, вы можете использовать инструменты командной строки, такие как dig , curl и wget .
Большинство поставщиков DNS, таких как OpenDNS и Google, позволяют запрашивать их серверы и получать ваш общедоступный IP-адрес.
Вы можете использовать любую из следующих команд, чтобы получить свой IP:
Существует множество онлайн-сервисов HTTP / HTTPS, которые отвечают вашим общедоступным IP-адресом. Вот некоторые из них:
Если какая-либо из приведенных выше команд не работает, возможно, проблема связана с онлайн-службой.
Вы даже можете создать псевдоним в своем файле
/.zshrc , чтобы вам не приходилось вводить и запоминать длинную команду. Например, вы можете добавить следующий псевдоним:
Теперь, когда вам нужно найти свой общедоступный IP-адрес, просто введите pubip в своем терминале.
Выводы
Мы показали вам несколько различных команд и онлайн-сервисов, которые вы можете использовать для определения своего частного и общедоступного IP-адреса.
Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.
Источник
Как в линуксе узнать IP-адрес
IP-адрес устройства служит неким идентификатором в локальной сети Интернет. К каждому ПК привязан собственный адрес, при помощи которого распознается устройство. Во многих ситуациях пользователь может обойтись и без этой информации, однако, в некоторых случаях знать IP Linux всё же полезно. Эти данные могут понадобиться для работы с домашним компьютером, а также с локальной сетью.
В данной статье будут рассмотрены альтернативные способы того, как узнать IP-адрес устройства Linux.
IP-address — что это?
IP-адреса принято делить на 3 типа:
- IP-адрес ПК (внутренний адрес);
- Адрес в локальной сети;
- Внешний IP-адрес.
Программное обеспечение любого устройства функционирует между собой при помощи сетевых протоколов. Для нормального взаимодействия нескольких программ требуется внутренний IP ПК. Обычно этот адрес выглядит следующим образом:
Если говорить об адресах локальной сети, то в этом вопросе возникают определенные трудности. По идее, каждый компьютер должен иметь уникальный сетевой идентификатор, но с некоторых пор это стало невозможным. В мире появилось слишком много устройств – свободные адреса начали стремительно заканчиваться. Теперь обычный пользователь не может иметь ПК с собственным IP-адресом в локальной сети (эта возможность доступна только серверам). Через NAT провайдеры начали размещать своих клиентов на одинаковых IP.
Это приводит к тому, что компьютер без проблем получает доступ к Интернет-серверу, но подключиться к такому ПК невозможно, поскольку его адрес совпадает с адресом сотни других устройств. Их владельцы также получили его от провайдера.
На текущий момент времени не существует иного способа осуществить подключение устройства к Интернету. Без NAT пользователю пришлось бы обеспечить отдельное Интернет-подключение для каждого устройства (например, для двух ноутбуков). А это, как минимум, очень дорого и неудобно.
Резюмируем: благодаря NAT подключение устройства к локальной сети происходит за счет получение устройством внешнего IP, принадлежащего поставщику услуг (провайдеру). Этот адрес также используется сотнями других пользователей.
Внутренний IP-адрес в Линукс
Следует еще раз напомнить о том, что внутренний адрес устройства всегда идентичный. Он был упомянут выше. Данная информация актуальна не только для пользователей Linux, но и остальных операционных систем. Если хочется убедиться в правдивости информации, можно воспользоваться терминалом:
Локальный IP-адрес в Линукс
Чтобы получить нужные данные, достаточно воспользоваться специальной командой в терминале дистрибутива Линукс:
Утилита выведет информацию обо всех интерфейсах и их адреса.
Более подробно о параметрах можно посмотреть в другой статье https://www.vseprolinux.ru/komanda-ip
Такая команда работает в разных версиях Линукс, таких как ubuntu, debian, centos.
В появившемся окне также можно увидеть множество дополнительных данных об интерфейсах: маска сети, некоторые статистические данные. Если не получается самостоятельно найти локальный адрес в окошке, обратите внимание на цифры, указанные после слов «inet». Это и есть искомый IP.
Чтобы вывести на экран окно, содержащее исключительно IP-адреса, выполните команду:
# ip a | grep inet
Узнать IP address можно с помощью команды «ifconfig», однако она считается устаревшей и в большинство дистрибутивов она не установлена по умолчанию.
Как узнать Внешний IP-адрес
Основная загвоздка заключается в том, что пользователь устройства не имеет доступа к серверу своего поставщика услуг. Это решало бы проблему одним махом, но такой возможности нет. Юзеру нужно искать обходные пути.
Как это сделать:
- Откройте любой специальный сайт, который может распознать IP-адрес вашего устройства. Как вариант, можно в браузере ввести в любой поисковой системе фразу «мой ip»;
- Альтернативный вариант: запустите терминал Линукс и укажите в нем команду wget.
Узнать IP версии 4:
wget -qO- eth0.me
IP версии 6:
$ wget -qO- ident.me
Если есть необходимость выяснить IP-адрес маршрутизатора, то придется действовать иным методом. Чтобы получить нужную информацию, внимательно ознакомьтесь с настройками гаджета.
Заключение
IP-адрес Линукс может потребоваться юзеру в различных ситуациях. Новичку нужно внимательно разобраться с типами адресов, чтобы понять специфику данного вопроса. Воспользовавшись нашими рекомендациями, вы быстро выявите способ получения важной информации о своем компьютере, функционирующем на базе популярной операционной системы Linux. Все эти способы указаны в статье. Совсем немного практики – и задача уже не кажется такой сложной, как это было в начале.
Источник
7 сетевых Linux-команд, о которых стоит знать системным администраторам
Существуют Linux-команды, которые всегда должны быть под рукой у системного администратора. Эта статья посвящена 7 утилитам, предназначенным для работы с сетью.
Этот материал — первый в серии статей, построенных на рекомендациях, собранных от множества знатоков Linux. А именно, я спросил у наших основных разработчиков об их любимых Linux-командах, после чего меня буквально завалили ценными сведениями. А именно, речь идёт о 46 командах, некоторые из которых отличает тот факт, что о них рассказало несколько человек.
В данной серии статей будут представлены все эти команды, разбитые по категориям. Первые 7 команд, которым и посвящена эта статья, направлены на работу с сетью.
Команда ip
Команда ip — это один из стандартных инструментов, который необходим любому системному администратору для решения его повседневных задач — от настройки новых компьютеров и назначения им IP-адресов, до борьбы с сетевыми проблемами существующих систем. Команда ip может выводить сведения о сетевых адресах, позволяет управлять маршрутизацией трафика и, кроме того, способна давать данные о различных сетевых устройствах, интерфейсах и туннелях.
Синтаксис этой команды выглядит так:
Самое важное тут — это (подкоманда). Здесь можно использовать, помимо некоторых других, следующие ключевые слова:
- address — адрес протокола (IPv4 или IPv6) на устройстве.
- tunnel — IP-туннель.
- route — запись таблицы маршрутизации.
- rule — правило в базе данных политики маршрутизации.
- vrf — управление виртуальными устройствами маршрутизации и перенаправления трафика.
- xfrm — управление IPSec-политикой.
Ниже приведены примеры, демонстрирующие распространённые сценарии использования команды ip .
Вывод IP-адресов, назначенных интерфейсу на сервере:
Назначение IP-адреса интерфейсу, например — enps03 :
Удаление IP-адреса из интерфейса:
Изменение статуса интерфейса, в данном случае — включение eth0 :
Изменение статуса интерфейса, в данном случае — выключение eth0 :
Изменение статуса интерфейса, в данном случае — изменение MTU eth0 :
Изменение статуса интерфейса, в данном случае — перевод eth0 в режим приёма всех сетевых пакетов:
Добавление маршрута, используемого по умолчанию (для всех адресов), через локальный шлюз 192.168.1.254, который доступен на устройстве eth0 :
Добавление маршрута к 192.168.1.0/24 через шлюз на 192.168.1.254:
Добавление маршрута к 192.168.1.0/24, который доступен на устройстве eth0 :
Удаление маршрута для 192.168.1.0/24, для доступа к которому используется шлюз 192.168.1.254:
Вывод маршрута к IP 10.10.1.4:
Команда ifconfig
Команда ifconfig до определённого времени представляла собой один из основных инструментов, используемых многими системными администраторами для настройки сетей и решения сетевых проблем. Теперь ей на замену пришла команда ip , о которой мы только что говорили. Но если вас, всё же, интересует эта команда, можете взглянуть на данный материал.
Команда mtr
MTR (Matt’s traceroute) — это программа, работающая в режиме командной строки, представляющая собой инструмент для диагностики сетей и устранения сетевых неполадок. Эта команда совмещает в себе возможности ping и traceroute . Она, как traceroute , может выводить сведения о маршруте, по которому сетевые данные идут от одного компьютера к другому. Она выводит массу полезных сведений о каждом шаге маршрутизации, например — время ответа системы. Благодаря использованию команды mtr можно получить довольно подробные сведения о маршруте, можно обнаружить устройства, которые вызывают проблемы при прохождении данных по сети. Если, например, наблюдается рост времени ответа системы, или рост числа потерянных пакетов, это позволяет с уверенностью говорить о том, что где-то между исследуемыми системами возникла проблема с сетевым соединением.
Синтаксис команды выглядит так:
Рассмотрим несколько распространённых способов применения mtr .
Если вызвать эту команду, указав лишь имя или адрес хоста — она выведет сведения о каждом шаге маршрутизации. В частности — имена хостов, сведения о времени их ответа и о потерянных пакетах:
Вот — вариант использования mtr , когда вместо имён хостов выводятся их IP-адреса (речь идёт о ключе -g , благодаря которому вместо имён выводятся числовые IP-адреса):
А следующий вариант команды позволяет выводить и имена, и IP-адреса хостов:
Так можно задать количество ping-пакетов, которые нужно отправить системе, маршрут к которой подвергается анализу:
А так можно получить отчёт, содержащий результаты работы mtr :
Вот — ещё один вариант получения такого отчёта:
Для того чтобы принудительно использовать TCP вместо ICMP — надо поступить так:
А вот так можно использовать UDP вместо ICMP:
Вот — вариант команды, где задаётся максимальное количество шагов маршрутизации:
Так можно настроить размер пакета:
Для вывода результатов работы mtr в формате CSV используется такая команда:
Вот — команда для вывода результатов работы mtr в формате XML:
Команда tcpdump
Утилита tcpdump предназначена для захвата и анализа пакетов.
Установить её можно так:
Прежде чем приступить к захвату пакетов, нужно узнать о том, какой интерфейс может использовать эта команда. В данном случае нужно будет применить команду sudo или иметь root-доступ к системе.
Если нужно захватить трафик с интерфейса eth0 — этот процесс можно запустить такой командой:
Или — такой, с указанием (через ключ -c ) количества пакетов, которые нужно захватить:
▍ Захват трафика, идущего к некоему хосту и от него
Можно отфильтровать трафик и захватить лишь тот, который приходит от определённого хоста. Например, чтобы захватить пакеты, идущие от системы с адресом 8.8.8.8 и уходящие к этой же системе, можно воспользоваться такой командой:
Для захвата трафика, идущего с хоста 8.8.8.8, используется такая команда:
Для захвата трафика, уходящего на хост 8.8.8.8, применяется такая команда:
▍ Захват трафика, идущего в некую сеть и из неё
Трафик можно захватывать и ориентируясь на конкретную сеть. Делается это так:
Ещё можно поступить так:
Можно, кроме того, фильтровать трафик на основе его источника или места, в которое он идёт.
Вот — пример захвата трафика, отфильтрованного по его источнику (то есть — по той сети, откуда он приходит):
Вот — захват трафика с фильтрацией по сети, в которую он направляется:
▍ Захват трафика, поступающего на некий порт и выходящего из некоего порта
Вот пример захвата трафика только для DNS-порта по умолчанию (53):
Захват трафика для заданного порта:
Захват только HTTPS-трафика:
Захват трафика для всех портов кроме 80 и 25:
Команда netstat
Инструмент netstat используется для вывода сведений о сетевых соединениях и таблицах маршрутизации, данных о работе сетевых интерфейсов, о masquerade-соединениях, об элементах групп многоадресной рассылки. Эта утилита является, как и ifconfig , частью пакета net-tools . В новом пакете iproute2 для достижения тех же целей используется утилита ss .
Если в вашей системе netstat отсутствует, установить эту программу можно так:
Ей, в основном, пользуются, вызывая без параметров:
В более сложных случаях её вызывают с параметрами, что может выглядеть так:
Можно вызывать netstat и с несколькими параметрами, перечислив их друг за другом:
Для вывода сведений обо всех портах и соединениях, вне зависимости от их состояния и от используемого протокола, применяется такая конструкция:
Для вывода сведений обо всех TCP-портах применяется такой вариант команды:
Если нужны данные по UDP-портам — утилиту вызывают так:
Список портов любых протоколов, ожидающих соединений, можно вывести так:
Список TCP-портов, ожидающих соединений, выводится так:
Так выводят список UDP-портов, ожидающих соединений:
А так — список UNIX-портов, ожидающих соединений:
Вот — команда для вывода статистических сведений по всем портам вне зависимости от протокола:
Так выводятся статистические сведения по TCP-портам:
Для просмотра списка TCP-соединений с указанием PID/имён программ используется такая команда:
Для того чтобы найти процесс, который использует порт с заданным номером, можно поступить так:
Команда nslookup
Команда nslookup используется для интерактивного «общения» с серверами доменных имён, находящимися в интернете. Она применяется для выполнения DNS-запросов и получения сведений о доменных именах или IP-адресах, а так же — для получения любых других специальных DNS-записей.
Рассмотрим распространённые примеры использования этой команды.
Получение A-записи домена:
Просмотр NS-записей домена:
Выяснение сведений о MX-записях, в которых указаны имена серверов, ответственных за работу с электронной почтой:
Обнаружение всех доступных DNS-записей домена:
Проверка использования конкретного DNS-сервера (в данном случае запрос производится к серверу имён ns1.nsexample.com ):
Проверка A-записи для выяснения IP-адресов домена — это распространённая практика, но иногда нужно проверить то, имеет ли IP-адрес отношение к некоему домену. Для этого нужно выполнить обратный просмотр DNS:
Команда ping
Команда ping — это инструмент, с помощью которого проверяют, на уровне IP, возможность связи одной TCP/IP-системы с другой. Делается это с использованием эхо-запросов протокола ICMP (Internet Control Message Protocol Echo Request). Программа фиксирует получение ответов на такие запросы и выводит сведения о них вместе с данными о времени их приёма-передачи. Ping — это основная команда, используемая в TCP/IP-сетях и применяемая для решения сетевых проблем, связанных с целостностью сети, с возможностью установления связи, с разрешением имён.
Эта команда, при простом способе её использования, принимает лишь один параметр: имя хоста, подключение к которому надо проверить, или его IP-адрес. Вот как это может выглядеть:
В данном случае работу команды ping можно остановить, воспользовавшись сочетанием клавиш CTRL+C . В противном случае она будет выполнять запросы до тех пор, пока её не остановят. После каждой ping-сессии выводятся сводные данные, содержащие следующие сведения:
- Min — минимальное время, которое требуется на получение ответа от пингуемого хоста.
- Avg — среднее время, которое требуется на получение ответа.
- Max — максимальное время, которое требуется на получение ответа.
Кроме того, среди данных, выводимых программой о пакетах, есть такой параметр, как TTL (Time To Live, время жизни пакета). Тут используются числовые значения TTL, указывающие на то, сколько шагов маршрутизации может пройти пакет. Это значение ещё известно как «лимит переходов» (hop limit).
Обычно, если запустить команду ping в её простом виде, не передавая ей дополнительные параметры, Linux будет пинговать интересующий пользователя хост без ограничений по времени. Если нужно изначально ограничить количество ICMP-запросов, например — до 10, команду ping надо запустить так:
А для того чтобы увидеть лишь итоговый отчёт работы ping — можно воспользоваться ключом -q :
В системах с несколькими сетевыми интерфейсами можно задавать конкретный интерфейс, которым должна пользоваться команда ping . Например, есть компьютер, имеющий интерфейсы eth0 и eth1 . Если нужно, чтобы команда ping использовала бы интерфейс eth0 — надо запустить её так:
Или можно указать адрес интерфейса. В данном случае речь идёт об IP-адресе 10.233.201.45:
Применяя эту команду, можно указать и то, какую версию протокола IP использовать — v4 или v6:
В процессе работы с утилитой ping вы столкнётесь с различными результатами. В частности, это могут быть сообщения о нештатных ситуациях. Рассмотрим три таких ситуации.
▍ Destination Host Unreachable
Вероятной причиной получения такого ответа является отсутствие маршрута от локальной хост-системы к целевому хосту. Или, возможно, это удалённый маршрутизатор сообщает о том, что у него нет маршрута к целевому хосту.
▍ Request timed out
Если результат работы ping выглядит именно так — это значит, что локальная система не получила, в заданное время, эхо-ответов от целевой системы. По умолчанию используется время ожидания ответа в 1 секунду, но этот параметр можно настроить. Подобное может произойти по разным причинам. Чаще всего это — перегруженность сети, сбой ARP-запроса, отбрасывание пакетов фильтром или файрволом и прочее подобное.
▍ Unknown host/Ping Request Could Not Find Host
Такой результат может указывать на то, что неправильно введено имя хоста, или хоста с таким именем в сети просто не существует.
О хорошем качестве связи между исследуемыми системами говорит уровень потери пакетов в 0%, а так же — низкое значение времени получения ответа. При этом в каждом конкретном случае время получения ответа варьируется, так как оно зависит от разных параметров сети. В частности — от того, какая среда передачи данных используется в конкретной сети (витая пара, оптоволокно, радиоволны).
Итоги
Надеемся, вам пригодятся команды и примеры их использования, о которых мы сегодня рассказали. А если они вам и правда пригодились — возможно, вам будет интересно почитать продолжение этого материала.
Источник