Базовый сетевой поток
Когда вы посещаете сайт, ваш компьютер определяет имя с помощью DNS, выбирает маршрут через сетевой интерфейс, открывает соединение с IP-адресом и портом, обменивается пакетами и передает данные приложению.
Работа в сети становится управляемой, если вы разделите разрешение имен, состояние локального интерфейса, маршрутизацию, удаленную доступность, службы прослушивания, политику брандмауэра и поведение приложений.
IP-адреса, локальный хост и DNS
IP-адрес идентифицирует конечную точку сети. Адреса IPv4 выглядят как 192.168.1.20; Адреса IPv6 длиннее, например 2001:db8::1. localhost указывает на ваш собственный компьютер, обычно 127.0.0.1 для IPv4 и ::1 для IPv6.
DNS превращает такие имена, как example.com, в IP-адреса. Если IP-пинг работает, но имя хоста не удается, DNS является серьезным подозрением.
Интерфейсы и маршруты
Сетевой интерфейс — это точка, в которой система подключается к сети: Ethernet, Wi-Fi, петлевой интерфейс, VPN, мост или интерфейс виртуального контейнера. Маршруты решают, куда пакеты пойдут дальше.
ip addr показывает адреса. ip маршрут показывает решения по маршрутизации. Маршрут по умолчанию — это то место, по которому идет трафик, если больше не соответствует конкретный маршрут.
ip -brief addr
ip routeПорты, TCP против UDP и сокеты
Порт идентифицирует конечную точку службы на компьютере. SSH обычно прослушивает TCP-порт 22, HTTP — TCP-порт 80 и HTTPS — TCP-порт 443. Сокет объединяет протокол, локальный адрес, локальный порт, удаленный адрес и удаленный порт.
TCP ориентирован на соединение и обеспечивает надежную упорядоченную доставку. UDP ориентирован на дейтаграммы и полезен, когда приложения по-разному управляют синхронизацией, потерями или простотой, например DNS-запросы, голос/видео и некоторый игровой трафик.
ss -tulpenping, curl, wget и практические проверки
ping проверяет доступность ICMP, а не работу веб-сайта. curl тестирует протоколы уровня приложений, такие как HTTP. wget удобен для скачивания. ss сообщает вам, что ваша машина прослушивает или к чему подключена.
ping -c 4 1.1.1.1curl -I https://example.comwget https://example.com/file.tar.gzОсновы брандмауэра и порядок устранения неполадок
Брандмауэр фильтрует трафик по правилам. В Linux дистрибутивы могут предоставлять управление брандмауэром через правила ufw, firewalld, nftables или облачного провайдера. Служба может работать локально, но быть недоступной, поскольку брандмауэр блокирует порт.
Устраните неполадки по порядку: подтвердите адрес локального интерфейса, подтвердите маршрут, проверьте DNS, проверьте удаленный IP-адрес, проверьте порт, проверьте локальную службу, проверьте брандмауэр, затем проверьте журналы приложений.
- 1Проверьте свой адрес с помощью ip-brief addr.
- 2Проверьте маршрут с помощью IP-маршрута.
- 3Проверьте DNS, сравнив пинг 1.1.1.1 и пинг example.com.
- 4Проверьте службу с помощью curl или ssh -v.
- 5Проверьте прослушиваемые сокеты с помощью ss -tlnp.
- 6Прочтите журналы службы с помощью Journalctl -u имя-службы.