как проверить ip адрес на линуксе
Как найти / получить свой IP-адрес в Linux
Знание IP-адреса вашего устройства важно при устранении неполадок в сети, настройке нового соединения или настройке брандмауэра.
IP-адреса можно разделить на две категории: публичные и частные. Общедоступный IP-адрес — это уникальный IP-адрес, к которому можно получить доступ из Интернета. Частные IP-адреса зарезервированы для внутреннего использования в вашей частной сети без прямого доступа к Интернету. Кроме того, существует два типа IP-адресов: IP версии 4 (IPv4) и IP версии 6 (IPv6).
В этой статье объясняется несколько различных методов определения публичных и частных IP-адресов системы Linux.
Найдите свой частный IP-адрес
Частные IP-адреса не маршрутизируются через Интернет и предназначены для работы только в локальной сети. Обычно частный IP-адрес назначается каждому устройству в вашей локальной сети вашим маршрутизатором. Это обеспечивает уникальный IP-адрес для всех устройств в локальной сети, таких как ваш телефон, ноутбук, смарт-телевизор, принтер, медиацентр и т. Д.
Устройства в локальной сети подключаются к Интернету через NAT (преобразование сетевых адресов).
Следующие диапазоны IPv4-адресов зарезервированы для частных сетей:
Чтобы отобразить список всех сетевых интерфейсов и связанных IP-адресов, введите следующую команду:
Результат будет выглядеть примерно так, как показано ниже. Выделен частный IP-адрес.
Вы также можете использовать следующие команды для отображения частного IP-адреса:
Найдите свой публичный IP-адрес
Общедоступный IP-адрес — это глобально маршрутизируемый IP-адрес, который назначается сетевому устройству и обеспечивает ему прямой доступ в Интернет. Они назначаются устройству его интернет-провайдером, и каждое устройство имеет уникальный общедоступный IP-адрес.
Общедоступные IP-адреса используются домашними маршрутизаторами, веб-серверами, почтовыми серверами и т. Д.
Определение общедоступного IP-адреса включает соединение с удаленным сервером по протоколу HTTP / HTTPS или DNS и получение IP-адреса из ответа удаленного сервера.
На настольных компьютерах самый простой способ узнать ваш общедоступный IP-адрес — это ввести в браузере «what is my ip»:
Большинство поставщиков DNS, таких как OpenDNS и Google, позволяют запрашивать их серверы и получать ваш общедоступный IP-адрес.
Вы можете использовать любую из следующих команд, чтобы получить свой IP:
Существует множество онлайн-сервисов HTTP / HTTPS, которые отвечают вашим общедоступным IP-адресом. Вот некоторые из них:
Если какая-либо из приведенных выше команд не работает, возможно, проблема связана с онлайн-службой.
Вы даже можете создать псевдоним в своем файле
Теперь, когда вам нужно найти свой общедоступный IP-адрес, просто введите pubip в своем терминале.
Выводы
Мы показали вам несколько различных команд и онлайн-сервисов, которые вы можете использовать для определения своего частного и общедоступного IP-адреса.
Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.
7 сетевых Linux-команд, о которых стоит знать системным администраторам
Существуют Linux-команды, которые всегда должны быть под рукой у системного администратора. Эта статья посвящена 7 утилитам, предназначенным для работы с сетью.
Этот материал — первый в серии статей, построенных на рекомендациях, собранных от множества знатоков Linux. А именно, я спросил у наших основных разработчиков об их любимых Linux-командах, после чего меня буквально завалили ценными сведениями. А именно, речь идёт о 46 командах, некоторые из которых отличает тот факт, что о них рассказало несколько человек.
В данной серии статей будут представлены все эти команды, разбитые по категориям. Первые 7 команд, которым и посвящена эта статья, направлены на работу с сетью.
Команда ip
Команда ip — это один из стандартных инструментов, который необходим любому системному администратору для решения его повседневных задач — от настройки новых компьютеров и назначения им IP-адресов, до борьбы с сетевыми проблемами существующих систем. Команда 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
Команда mtr
Синтаксис команды выглядит так:
Если вызвать эту команду, указав лишь имя или адрес хоста — она выведет сведения о каждом шаге маршрутизации. В частности — имена хостов, сведения о времени их ответа и о потерянных пакетах:
А следующий вариант команды позволяет выводить и имена, и IP-адреса хостов:
Так можно задать количество ping-пакетов, которые нужно отправить системе, маршрут к которой подвергается анализу:
А так можно получить отчёт, содержащий результаты работы mtr :
Вот — ещё один вариант получения такого отчёта:
Для того чтобы принудительно использовать TCP вместо ICMP — надо поступить так:
А вот так можно использовать UDP вместо ICMP:
Вот — вариант команды, где задаётся максимальное количество шагов маршрутизации:
Так можно настроить размер пакета:
Для вывода результатов работы mtr в формате CSV используется такая команда:
Вот — команда для вывода результатов работы mtr в формате XML:
Команда tcpdump
Утилита tcpdump предназначена для захвата и анализа пакетов.
Установить её можно так:
Прежде чем приступить к захвату пакетов, нужно узнать о том, какой интерфейс может использовать эта команда. В данном случае нужно будет применить команду sudo или иметь root-доступ к системе.
Если нужно захватить трафик с интерфейса eth0 — этот процесс можно запустить такой командой:
▍ Захват трафика, идущего к некоему хосту и от него
Можно отфильтровать трафик и захватить лишь тот, который приходит от определённого хоста. Например, чтобы захватить пакеты, идущие от системы с адресом 8.8.8.8 и уходящие к этой же системе, можно воспользоваться такой командой:
Для захвата трафика, идущего с хоста 8.8.8.8, используется такая команда:
Для захвата трафика, уходящего на хост 8.8.8.8, применяется такая команда:
▍ Захват трафика, идущего в некую сеть и из неё
Трафик можно захватывать и ориентируясь на конкретную сеть. Делается это так:
Ещё можно поступить так:
Можно, кроме того, фильтровать трафик на основе его источника или места, в которое он идёт.
Вот — пример захвата трафика, отфильтрованного по его источнику (то есть — по той сети, откуда он приходит):
Вот — захват трафика с фильтрацией по сети, в которую он направляется:
▍ Захват трафика, поступающего на некий порт и выходящего из некоего порта
Вот пример захвата трафика только для DNS-порта по умолчанию (53):
Захват трафика для заданного порта:
Захват только HTTPS-трафика:
Захват трафика для всех портов кроме 80 и 25:
Команда netstat
Если в вашей системе 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 в её простом виде, не передавая ей дополнительные параметры, Linux будет пинговать интересующий пользователя хост без ограничений по времени. Если нужно изначально ограничить количество ICMP-запросов, например — до 10, команду ping надо запустить так:
Или можно указать адрес интерфейса. В данном случае речь идёт об 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%, а так же — низкое значение времени получения ответа. При этом в каждом конкретном случае время получения ответа варьируется, так как оно зависит от разных параметров сети. В частности — от того, какая среда передачи данных используется в конкретной сети (витая пара, оптоволокно, радиоволны).
Итоги
Надеемся, вам пригодятся команды и примеры их использования, о которых мы сегодня рассказали. А если они вам и правда пригодились — возможно, вам будет интересно почитать продолжение этого материала.
Как в линуксе узнать IP-адрес
IP-адрес устройства служит неким идентификатором в локальной сети Интернет. К каждому ПК привязан собственный адрес, при помощи которого распознается устройство. Во многих ситуациях пользователь может обойтись и без этой информации, однако, в некоторых случаях знать IP Linux всё же полезно. Эти данные могут понадобиться для работы с домашним компьютером, а также с локальной сетью.
В данной статье будут рассмотрены альтернативные способы того, как узнать IP-адрес устройства Linux.
IP-адреса принято делить на 3 типа:
Программное обеспечение любого устройства функционирует между собой при помощи сетевых протоколов. Для нормального взаимодействия нескольких программ требуется внутренний IP ПК. Обычно этот адрес выглядит следующим образом:
Если говорить об адресах локальной сети, то в этом вопросе возникают определенные трудности. По идее, каждый компьютер должен иметь уникальный сетевой идентификатор, но с некоторых пор это стало невозможным. В мире появилось слишком много устройств – свободные адреса начали стремительно заканчиваться. Теперь обычный пользователь не может иметь ПК с собственным IP-адресом в локальной сети (эта возможность доступна только серверам). Через NAT провайдеры начали размещать своих клиентов на одинаковых IP.
Это приводит к тому, что компьютер без проблем получает доступ к Интернет-серверу, но подключиться к такому ПК невозможно, поскольку его адрес совпадает с адресом сотни других устройств. Их владельцы также получили его от провайдера.
На текущий момент времени не существует иного способа осуществить подключение устройства к Интернету. Без NAT пользователю пришлось бы обеспечить отдельное Интернет-подключение для каждого устройства (например, для двух ноутбуков). А это, как минимум, очень дорого и неудобно.
Резюмируем: благодаря NAT подключение устройства к локальной сети происходит за счет получение устройством внешнего IP, принадлежащего поставщику услуг (провайдеру). Этот адрес также используется сотнями других пользователей.
Внутренний IP-адрес в Линукс
Следует еще раз напомнить о том, что внутренний адрес устройства всегда идентичный. Он был упомянут выше. Данная информация актуальна не только для пользователей Linux, но и остальных операционных систем. Если хочется убедиться в правдивости информации, можно воспользоваться терминалом:
Локальный IP-адрес в Линукс
Чтобы получить нужные данные, достаточно воспользоваться специальной командой в терминале дистрибутива Линукс:
Утилита выведет информацию обо всех интерфейсах и их адреса.
Более подробно о параметрах можно посмотреть в другой статье https://www.vseprolinux.ru/komanda-ip
Такая команда работает в разных версиях Линукс, таких как ubuntu, debian, centos.
В появившемся окне также можно увидеть множество дополнительных данных об интерфейсах: маска сети, некоторые статистические данные. Если не получается самостоятельно найти локальный адрес в окошке, обратите внимание на цифры, указанные после слов «inet». Это и есть искомый IP.
Чтобы вывести на экран окно, содержащее исключительно IP-адреса, выполните команду:
Узнать IP address можно с помощью команды «ifconfig», однако она считается устаревшей и в большинство дистрибутивов она не установлена по умолчанию.
Как узнать Внешний IP-адрес
Основная загвоздка заключается в том, что пользователь устройства не имеет доступа к серверу своего поставщика услуг. Это решало бы проблему одним махом, но такой возможности нет. Юзеру нужно искать обходные пути.
Если есть необходимость выяснить IP-адрес маршрутизатора, то придется действовать иным методом. Чтобы получить нужную информацию, внимательно ознакомьтесь с настройками гаджета.
Заключение
IP-адрес Линукс может потребоваться юзеру в различных ситуациях. Новичку нужно внимательно разобраться с типами адресов, чтобы понять специфику данного вопроса. Воспользовавшись нашими рекомендациями, вы быстро выявите способ получения важной информации о своем компьютере, функционирующем на базе популярной операционной системы Linux. Все эти способы указаны в статье. Совсем немного практики – и задача уже не кажется такой сложной, как это было в начале.
Как узнать 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-адрес командой hostname
Команда выводит все сетевые адреса хоста (системы), кроме loopback интерфейса. Если у вас всего одно сетевое соединение, то, скорее всего, будет выведен один IP-адрес.
Через графическую утилиту
Параметры→Сеть
Настройки сетевого интерфейса.
Как узнать IP-адрес Linux
Каждый компьютер в сети интернет нужно определённым образом идентифицировать. Для этого используются IP-адреса. Каждый компьютер, подключённый к интернету, имеет свой адрес, с помощью которого можно очень просто обратиться к этому компьютеру.
Если вы хотите каким-либо образом взаимодействовать с другим компьютером по Сети, вам нужно узнать его IP-адрес Linux. Очень часто приходится работать по IP-адресу с серверами, но это может быть полезно и для домашних компьютеров, и для локальных сетей. В этой небольшой статье мы рассмотрим, как узнать IP Linux разными способами. Поговорим о том, как узнать внешний IP, выданный провайдером, и внутренний IP в вашей локальной сети. Но сначала давайте попытаемся понять, что такое IP-адрес, и как всё работает.
Немного теории
Мы можем выделить три типа IP-адресов, с которыми вам придётся сталкиваться:
Но с локальной сетью всё немного сложнее. В идеале, каждый компьютер в мире должен был бы иметь уникальный IP-адрес для полноценного доступа в интернет. Но с ростом популярности этой технологии свободные адреса скоро начали заканчиваться, и теперь уникальные IP имеют только серверы, а обычные пользователи размещаются провайдерами по несколько сотен на одном IP с помощью NAT.
Технология NAT позволяет компьютеру подключиться к любому серверу в интернете и получить от него ответ, но инициировать подключение к такому компьютеру невозможно, поскольку фактически один IP принадлежит сотне компьютеров, и система просто не знает, к какому из них обращаются.
Как вы поняли, ваш домашний компьютер мог бы иметь внешний IP-адрес доступный всем, но это нецелесообразно как минимум по двум причинам. Во-первых, дорого, во-вторых, очень небезопасно. Поэтому подключение компьютера к интернету сейчас выглядит приблизительно так:
Теперь, когда вы немного начали ориентироваться в вопросе, давайте рассмотрим способы узнать свой IP Linux.
Как узнать внутренний IP Linux
Вы можете убедится в этом, выполнив nslookup:
Как узнать локальный IP в Linux
Узнать локальный IP компьютера тоже не очень сложно. Для этого вам не нужны никакие сервисы, мы можем просто посмотреть информацию об интерфейсах.
Чтобы узнать свой IP Linux в локальной сети? выполните такую команду:
Здесь отображается довольно много информации о сетевых интерфейсах. Кроме IP, здесь можно увидеть MAC-адрес, маску сети и небольшую статистику по работе интерфейса. IP-адрес каждого интерфейса отображается после слов inet addr.
Вы можете отфильтровать лишнюю информацию и вывести только IP-адреса:
sudo ifconfig | grep «inet addr»
Здесь IP-адрес отображается после слова inet. Вы знаете, как посмотреть IP-адрес Linux для компьютера в локальной сети, теперь рассмотрим внешний.
Как узнать внешний IP-адрес в Linux
С внешним IP-адресом ситуация немного сложнее. Конечно, если бы у вас был доступ к серверу провайдера, вы бы могли выполнить ту же самую команду ifconfig и узнать внешний IP Linux точно так же, как и на своём компьютере.
Понятное дело, что доступа к серверам провайдера у вас нет, поэтому придётся пользоваться обходными путями. Мы можем открыть специальный сайт, который посмотрит, с какого IP мы его открыли, и скажет его нам. Есть несколько таких сайтов. Проще всего сделать это с помощью браузера, например, откройте сайт ifconfig.me или eth0.me:
Но это не совсем удобно. Лучше сделать это с помощью терминала. Просто используйте команду wget. Сразу рассмотрим несколько таких сайтов, чтобы вы могли использовать любой понравившийся из них:
Чтобы не набирать длинную команду каждый раз, вы можете создать удобный алиас:
Хочу заметить, что если вы хотите узнать не внешний IP компьютера, а именно адрес роутера в сети провайдера, то такой способ не поможет. Вам нужно посмотреть в настройках роутера или попытаться сделать это через командный интерфейс роутера, так как это описано в предыдущем варианте.
Выводы
Вот и всё, теперь вы точно знаете, как узнать IP-адрес Linux, оказывается, это не так сложно, как могло показаться сразу. Правда, во всех этих терминах можно сначала запутаться, но с практикой это проходит. Если у вас остались вопросы, спрашивайте в комментариях!
В статье мы рассмотрели, что такое IP-адрес, но маршрутизацию затронули только вскользь. Если вы хотите узнать об этом подробнее, то можете посмотреть вот это видео: