Как проверить доступ в интернет linux
Перейти к содержимому

Как проверить доступ в интернет linux

  • автор:

Как проверить подключение к Интернету в Linux

В этом руководстве вы узнаете, как проверить подключение к Интернету в операционной системе Linux. Когда мы говорим о подключении к Интернету, обычно это для всех означает разные вещи. Это означает, что вы можете быть подключены к Интернету, но не можете просматривать какие-либо веб-сайты.

В этом уроке вы узнаете:

  • Как проверить интернет-соединение
  • Как проверить разрешение DNS
  • Как протестировать локальную сеть
  • Как проверить разрешение вашего DNS

проверить подключение к Интернету в Linux

Проверить подключение к Интернету в Linux

Требования к программному обеспечению и используемые условные обозначения

Требования к программному обеспечению и условные обозначения командной строки Linux

Категория Требования, условные обозначения или используемая версия программного обеспечения
Система Установлено или обновленная Ubuntu 20.04 Focal Fossa
Программного обеспечения N / A
Другой Привилегированный доступ к вашей системе Linux с правами root или через судо команда.
Условные обозначения # — требует данных команды linux для выполнения с привилегиями root либо непосредственно как пользователь root, либо с использованием

Как проверить подключение к Интернету в Linux пошаговая инструкция

Давайте возьмем нисходящий подход к тестированию и устранению неполадок вашего интернет-соединения. Каждый из приведенных ниже шагов может дать вам подсказку о том, в чем может быть проблема с вашим интернет-соединением и как ее решить.

    Первый и самый очевидный способ проверить ваше интернет-соединение — открыть любой имеющийся в вашем распоряжении интернет-браузер и просмотреть любой действующий веб-сайт. Например, откройте в браузере https://linuxconfig.org .

Если у вас нет графического пользовательского интерфейса, используйте один из многих инструментов командной строки для подключения к любому веб-сайту. Например, попробуйте использовать завиток команда с вашего терминала:

Проверьте подключение к Интернету в Linux с помощью команды curl

Проверьте подключение к Интернету в Linux с помощью команды curl

Если вы видите сайт в своем браузере или получили 200 ОК при использовании завиток Вы можете быть счастливы, узнав, что ваша проверка подключения к Интернету прошла успешно и вы подключены к Интернету. Если у вас все еще есть проблемы с подключением к любым другим желаемым интернет-службам, проблема может быть связана с брандмауэром вашей операционной системы, маршрутизатора и поставщика интернет-услуг.

Приведенная выше команда должна привести к 0% потеря пакетов .

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

Поэтому сначала получите IP-адрес своего шлюза и попытайтесь узнать, сможете ли вы связаться с ним, используя пинг команда. Например, сначала используйте ip команда для получения IP-адреса вашего шлюза по умолчанию:

Затем попробуйте пинг этот IP-адрес:

Проверить и протестировать шлюз по умолчанию в Linux

Проверить и протестировать шлюз по умолчанию в Linux

На основании ваших результатов существует несколько возможных интерпретаций. Если вы можете подключиться к шлюзу и не можете проверить связь с сервером, как показано на шаге выше, то, скорее всего, вы отключены от Интернета. В случае, если вы не можете получить доступ к шлюзу по умолчанию, либо у вас неверные настройки шлюза по умолчанию, либо шлюз блокирует ваши запросы ping.

Наша система настроена на использование хоста DNS-сервера с IP-адресом. 192.168.1.1 . Убедитесь, что вы можете связаться со своим DNS-сервером. Опять же, пинг это удобный инструмент и здесь:

Еще раз, вывод вышеуказанной команды должен привести к 0% потеря пакетов .

Если вы не можете связаться со своим DNS, это может означать, что он либо не отвечает на пакеты ICPM ping, либо находится за брандмауэром, либо сервер не работает.

В этом случае обновите свой /etc/resolv.conf с альтернативным DNS-сервером.

Подпишитесь на новостную рассылку Linux Career Newsletter, чтобы получать последние новости, вакансии, советы по карьере и рекомендуемые руководства по настройке.

LinuxConfig ищет технических писателей, специализирующихся на технологиях GNU / Linux и FLOSS. В ваших статьях будут представлены различные руководства по настройке GNU / Linux и технологии FLOSS, используемые в сочетании с операционной системой GNU / Linux.

Ожидается, что при написании статей вы сможете идти в ногу с технологическим прогрессом в вышеупомянутой технической области. Вы будете работать самостоятельно и сможете выпускать как минимум 2 технических статьи в месяц.

  • 08/08/2021
  • 0
  • СетиБезопасностьСерверАдминистрация

Как использовать мостовую сеть с libvirt и KVM

Как использовать мостовую сеть с libvirt и KVM

  • 08/08/2021
  • 0
  • СетиБезопасностьUbuntuВиртуализацияАдминистрацияDebian

Libvirt — это бесплатное программное обеспечение с открытым исходным кодом, которое предоставляет API для управления различными аспектами виртуальных машин. В Linux он обычно используется вместе с KVM и Qemu. Помимо прочего, libvirt используется д.

Как отслеживать системные вызовы, сделанные процессом с помощью strace в Linux

Как отслеживать системные вызовы, сделанные процессом с помощью strace в Linux

  • 09/08/2021
  • 0
  • ПрограммированиеАдминистрацияКомандыРазработка

Бывают случаи, когда полезно проверить, что работает под капотом запущенного приложения и какие системные вызовы оно выполняет во время выполнения. Чтобы выполнить такую ​​задачу в Linux, мы можем использовать Strace полезность. В этой статье мы у.

Объяснение виртуальных хостов на основе IP и имен Apache

Объяснение виртуальных хостов на основе IP и имен Apache

  • 09/08/2021
  • 0
  • СерверВиртуализацияВеб серверАдминистрация

Используя виртуальные хосты, мы можем сделать httpd сервер управляет несколькими веб-сайтами. Мы можем использовать как IP, так и виртуальные хосты на основе имен; в чем разница между ними?Как Apache решает, какой из виртуальных хостов должен быть.

[в закладки] Шпаргалка системного администратора по сетевым инструментам Linux

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

В некоторых из рассматриваемых здесь примеров вы столкнётесь с сокращением <fqdn> (fully qualified domain name, полное доменное имя). Встретив его, замените его, в зависимости от обстоятельств, на адрес интересующего вас сайта или сервера, например, на нечто вроде server-name.company.com .

Утилита ping , как можно судить по её названию, используется для проверки связи между узлами сети, между компьютером, на котором её запускают, и другой системой. Эта утилита использует протокол ICMP, отправляя эхо-запросы, на которые отвечает удалённая система, получающая их. Использование ping , кроме того — это хороший способ проверки связности сети, проводимой в качестве первого шага диагностики сети при наличии неполадок. Команду ping можно использовать с адресами IPv4 и IPv6. Тут можно почитать подробности об IP-адресах и о работе с ними.

▍Примеры

Ping, кроме того, можно использовать для выяснения IP-адресов сайтов на основе их имён. Вот как это выглядит.


Использование ping для выяснения IP-адреса сайта по его имени

Traceroute

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

▍Пример

Telnet

Утилита telnet позволяет связаться с удалённым компьютером по протоколу Telnet и взаимодействовать с ним, используя соответствующие команды.

▍Пример

Для организации сеанса Telnet-связи с другим компьютером используется следующая команда:

Netstat

Эта команда позволяет собирать сведения о сети и используется в ходе поиска и исправления сетевых неполадок, применяется для проверки данных о работе интерфейсов и портов, для исследования таблиц маршрутизации, для изучения информации о работе протоколов. Эта команда непременно должна присутствовать в арсенале системного администратора.

▍Примеры

Для того чтобы получить список всех портов, находящихся в режиме прослушивания, воспользуйтесь такой командой:

Следующая команда выводит сведения обо всех портах. Для того чтобы ограничиться только TCP-портами, нужно воспользоваться ключом -at , для того, чтобы получить данные об UDP-портах, используйте ключ -au .

Для просмотра таблиц маршрутизации воспользуйтесь такой командой:

Вот как выглядит результат выполнения этой команды.


Сведения о таблице маршрутизации

Вот вариант этой команды, выводящий статистику по протоколам:


Статистика по протоколам

Следующий вариант вызова netstat позволяет узнать сведения об отправленных и полученных пакетах (transmission/receive, TX/RX) по каждому интерфейсу:


Данные об отправленных и полученных пакетах

Nmcli

Утилита nmcli отлично подходит для управления сетевыми соединениями, для выполнения настроек и для решения других подобных задач. С её помощью можно управлять программой NetworkManager и модифицировать сетевые параметры различных устройств.

▍Примеры

Вот как с помощью nmcli вывести список сетевых интерфейсов:

Так можно вывести информацию по конкретному интерфейсу:

Следующий вариант вызова команды позволяет проверить подключение устройства к сети:


Примеры использования nmcli

Эта команда позволяет отключить заданный интерфейс:

А эта позволяет включить интерфейс:

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

Маршрутизация

Существует множество команд, которые можно использовать для проверки правил маршрутизации и их настройки. Рассмотрим самые полезные из них.

▍Примеры

Следующая команда показывает все текущие маршруты, настроенные для соответствующих интерфейсов:


Маршруты, настроенные для интерфейсов

Эта команда позволяет добавить в таблицу маршрутизации шлюз, используемый по умолчанию:

Следующая команда добавляет в таблицу маршрутизации новый сетевой маршрут. Существует и множество других её параметров, позволяющих выполнять такие операции, как добавление маршрута и шлюза, используемых по умолчанию, и так далее.

С помощью такой команды можно удалить запись о заданном маршруте из таблицы маршрутизации:

Вот примеры использования команды route .


Использование команды route

Вот команда, которая применяется для вывода текущей таблицы соседей. Кроме того, её можно использовать для добавления, изменения или удаления сведений о соседях:

Взглянем на примеры её использования.


Данные, полученные с помощью команды ip neighbor

Вот сведения о команде ip neigh


Сведения о команде ip neigh

Команда arp (ARP — это сокращение от Address Resolution Protocol, протокол определения адреса) похожа на ip neighbor . Утилита arp выводит данные о соответствии IP-адресов MAC -адресам. Вот как её использовать:

Вот пример её вызова.


Вызов команды arp

Tcpdump и Wireshark

Linux даёт в распоряжение администратора множество инструментов для захвата и анализа пакетов. Среди них, например, tcpdump , wireshark , tshark , и другие. Они используются для захвата сетевого трафика в передаваемых системой пакетах или в пакетах, получаемых ей. Это делает их весьма ценным инструментом администратора, помогающим в деле выяснения причин различных сетевых неполадок. Тем, кто предпочитает командную строку всем остальным способам общения с компьютерами, понравится tcpdump . Тем же, кто любит графические интерфейсы, можно порекомендовать wireshark — отличный инструмент для захвата и анализа пакетов. Утилита tcpdump — это встроенное в Linux средство для захвата сетевого трафика. Его можно использовать для захвата и вывода трафика с фильтрацией по портам, протоколам, и по другим признакам.

▍Примеры

Такая команда показывает, в режиме реального времени, пакеты с заданного интерфейса:

Пакеты можно сохранять в файл, воспользовавшись флагом -w и задав имя файла:

Вот пример использования tcpdump .


Использование tcpdump

Следующий вариант команды используется для захвата пакетов, приходящих с заданного IP системы-источника:

Так можно захватить пакеты, идущие на заданный адрес системы-приёмника:

Вот пример использования tcpdump для захвата пакетов для заданного номера порта, например, это может быть порт 53, 80, 8080, и так далее:

Здесь показано, как с помощью tcpdump захватывать пакеты заданного протокола, вроде TCP, UDP или других:

Iptables

Утилита iptables похожа на файрвол, она поддерживает фильтрацию пакетов, что позволяет управлять трафиком, пропуская или блокируя его. Диапазон возможностей этой утилиты огромен. Рассмотрим несколько наиболее распространённых вариантов её использования.

▍Примеры

Следующая команда позволяет вывести все существующие правила iptables :

Эта команда удаляет все существующие правила:

Следующие команды разрешают прохождение трафика с заданного номера порта к заданному интерфейсу:

Следующие команды разрешают loopback-доступ к системе:

Nslookup

Инструмент nslookup используется для получения сведений о назначении IP-адресов сетевым ресурсам. Его можно использовать и для получения сведений с DNS-серверов, например таких, как все DNS-записи для некоего веб-сайта (ниже мы рассмотрим соответствующий пример). На nslookup похожа утилита dig (Domain Information Groper).

▍Примеры

Следующая команда выводит IP-адреса вашего DNS-сервера в поле Server, и, ниже, выдаёт IP-адрес искомого сайта:

Такая команда показывает все доступные записи для заданного веб-сайта или домена:

Поиск неполадок

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

▍Примеры

  • ss — утилита для вывода статистической информации о сокетах.
  • nmap <ip-address> — имя этой команды является сокращением от Network Mapper. Она сканирует сетевые порты, обнаруживает хосты, выясняет MAC-адреса и выполняет множество других задач.
  • ip addr/ifconfig -a — эта команда предоставляет сведения об IP-адресах и другие данные по всем интерфейсам системы.
  • ssh -vvv user@<ip/domain> — такая команда позволяет подключиться по SSH к другому компьютеру, используя заданный IP-адрес или доменное имя компьютера и имя пользователя. Флаг -vvv позволяет получать подробные сведения о происходящем.
  • ethtool -S <interface> — данная команда позволяет вывести статистические сведения по заданному интерфейсу.
  • ifup <interface> — эта команда включает указанный интерфейс.
  • ifdown <interface> — эта команда отключает указанный интерфейс.
  • systemctl restart network — с помощью этой команды можно перезагрузить системную сетевую подсистему.
  • /etc/sysconfig/network-scripts/<interface-name> — это — файл настройки интерфейсов, используемый для указания IP-адреса, сети, шлюза и других параметров для заданного интерфейса. Здесь можно задать использование интерфейсом DHCP-режима.
  • /etc/hosts — данный файл содержит сведения о соответствии хостов или доменов IP-адресам, настроенные администратором.
  • /etc/resolv.conf — в этом файле хранятся настройки DNS.
  • /etc/ntp.conf — этот файл хранит настройки NTP.

Итоги

В этой небольшой шпаргалке мы рассказали о сетевых инструментах Linux, предназначенных для системных администраторов. Надеемся, вам эти инструменты пригодятся.

Уважаемые читатели! Чем вы пользуетесь для администрирования сетей и для выяснения причин сетевых неполадок?

9 commands to check if connected to internet with shell script examples

In this article I will share multiple commands and examples to check if connected to internet for your Linux machine. At the end of the article I will also share some example to test internet connection from the Linux to external network using shell script.

But before we do that there are certain things you must take care of, such as

  • You have IP Address assigned to your network interface (static or dhcp)
  • Your gateway is reachable from the Linux system
  • If you are on virtual machine then make sure your VM is configured to be able to connect external network
  • Your DNS is properly configured

Now there are multiple commands which are available in Linux which can be used to check if connected to internet, we will try to discuss some of them here in brief.

1. Ping Test

The very first tool I use to check if connected to internet is via ping utility . But do you know how to check ping or perform ping check to check if connected to internet? Ping is part of iputils rpm so make sure iputils is installed on your setup

To perform ping check, try to ping any page on internet such as google.com

Here we use -c 1 with ping tool to send only one packet . Now check the statistics section, we see 1 packet was transmitted and received and there was 0% packet loss so it means we are connected to internet.

If you plan to check if connected to internet via shell script then you can use below, anything in the output other than «0» means not connected to internet.

2. Check port availability using cat, echo..

There are various tools which can be used to check port availability which I will share in this article. But many of them are not installed by default so you may have to install them manually. Alternatively you can use below command to check if connected to internet without installing any additional rpm

If the output is 0 then it means you are connected to internet, but if the output is something like below

Then your linux node is not connected to internet.

Alternatively you can also use

3. DNS lookup using nslookup, host etc..

You can perform a DNS lookup any web page address to check if connected to internet. With a successful DNS lookup you should get a response something like below.

For a failed DNS lookup you should get something like

There are many more commands to perform DNS lookup such as host, dig etc

4. Curl

curl is a tool to transfer data from or to a server, using one of the many supported protocols such as HTTP, FTP etc. We can also use this tool to query a webpage and test internet connection in Linux.

Here if you receive anything other than 200 OK then it means the server failed to connect to the provided page. So unless you provide an invalid webpage, your node is connected to internet

5. Telnet

Telnet is another tool to check port connectivity so you can check port availability of any webpage from the Linux node to check if connected to internet. We can try connecting port 53 of Google DNS to check internet connection.

As you see the session was » connected «. If you get an output like below

then it means there is a problem with internet connectivity.

6. Nmap

nmap is normally a port scanner to check the list of open ports on a system. We will use this to connect to external network to scan the port. If it is able to connect to the external network for port scanning then we can check if connected to internet.

Here I am scanning google.com on port 443. As you see highlighted section, nmap was able to establish connection with google.com

7. netcat or nc

In some variant of Linux you will find netcat while in others nc , you can use either of these tools for port scanning. nc or ncat is part of nmap-ncat rpm. Here we use nc command to check connection to google.com on port 443

8. wget

GNU Wget is a free utility for non-interactive download of files from the Web. But we can also use this to check if connected to internet.

Here with —spider Wget will behave as a Web spider, which means that it will not download the pages, just check that they are there
With echo $? we check the exit status, anything other than 0 in the output means your system is not connected to internet

9. Traceroute

The traceroute command shows every step taken on the route from your machine to a specified host. Assuming you are having problems connecting to www.google.com so you can use traceroute to check all the hubs taken to reach the destination server. This will also test internet connection.

Here we were able to trace the route to google.com upto a certain point.

What do those * * * mean?

Each one indicates a five-second timeout at that hop. Sometimes that could indicate that the machine simply doesn’t understand how to cope with that traceroute packet due to a bug, but a consistent set of * indicates that there’s a problem somewhere with the router to which 216.239.43.239 hands off packets.

On a Linux system with no internet connection, you would face problem with DNS resolution itself

Как проверить подключение к Интернету в терминале Linux

Как проверить подключение к Интернету в терминале Linux

Советы и хитрости

Во время работы на серверах Linux, где у нас нет графического интерфейса Linux и есть доступ к терминалу, откуда мы должны управлять всем сервером, становится трудно диагностировать проблемы с подключением к Интернету. Таким образом, этот пост содержит несколько методов и подробное руководство о том, как проверить подключение к Интернету в Linux Terminal.

Метод 1: команда PING

Лучший способ — проверить доступность Интернета с помощью команды PING.

Команда PING используется для отправки и получения пакетов от внешнего / удаленного сервера и на него.

В качестве примера мы попытаемся отправить три интернет-пакета на сервер Google и проверить подключение к Интернету, сможем ли мы получать интернет-пакеты с сервера Google.

В качестве примера мы попытаемся отправить три интернет-пакета на сервер Google

В выводе вы также можете увидеть, что три пакета переданы и получены. Опять же, это потому, что пинг на сервер Google прошел успешно.

Метод 2: команда CURL

Другой способ проверить подключение к Интернету — использовать команду CURL.

Команда CURL используется для загрузки, выгрузки или передачи данных по сети с сервера или на сервер. Он поддерживает различные протоколы, и мы можем использовать его для проверки подключения к Интернету, подключившись к linuxhint.com и получив заголовки. Если заголовки получены успешно, это означает, что Интернет работает; в противном случае возникнет проблема.

Команда CURL используется для загрузки, выгрузки или передачи данных по сети с сервера или на сервер

Если вы получаете статус 200 OK и заголовки веб-сайта, подключение к Интернету работает нормально.

Это методы проверки подключения к Интернету.

Диагностируйте проблему

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

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

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

Чтобы получить IP-адрес шлюза по умолчанию, используйте команду «ip r» :

Чтобы получить IP-адрес шлюза по умолчанию, используйте команду «ip r»

И попробуйте выполнить ping до шлюза по умолчанию с помощью команды PING:

И попробуйте выполнить ping до шлюза по умолчанию с помощью команды PING

Если пинг не удался, это означает, что возникла проблема с настройками шлюза, и вам необходимо их перенастроить. В противном случае настройки шлюза в порядке, но Интернет не работает со стороны интернет-провайдера.

Заключение

Этот пост содержит подробное руководство о том, как проверить подключение к Интернету в терминале Linux и как диагностировать проблему. Команда PING точно используется для целей проверки связи. Как следует из ее названия, в то время как команда CURL используется для передачи данных по сети. Используя команду «ip», мы можем диагностировать проблему. Либо есть проблема в шлюзе по умолчанию, разрешении DNS-сервера, сетевом адаптере или ISP (провайдер интернет-услуг).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *