Troubleshooting
curl
Используется для общей проверки доступности ресурса:
curl -v example.com
Если хотим проверить отдельный порт доменного имени:
curl -vvv whois.namecheap.com
Эта команда покажет заголовки HTTP, включая код состояния, который может указывать, доступна ли страница (например, HTTP/1.1 200 OK):
curl -I https://www.example.com
nmap
nmap - To check which network ports are open on the server:
nmap -p 80,443 www.example.com
telnet
Чтобы подключиться к веб-серверу через порт 443:
telnet www.example.com 443
traceroute
netcat
nc -w3 -4 -v www.redhat.com 80
mtr
Например, чтобы проверить роутинг и качество соединения трафика с хостом назначения example.com:
mtr -rw example.com
Анализируя вывод MTR, вы ищете две вещи: потери и задержку:
mtr --report www.google.com
nslookup
dig
dig @8.8.8.8 +short TXT mailout.spacemail.com "v=spf1 include:spf-spacemail.jellyfish.systems -all"
Networking Errors & solutions in Linux
Connection Refused
Происходит, когда сервер активно отклоняет запрос на соединение.
- Причина: Возможно, служба не запущена или не настроена должным образом.
- Решение: Проверьте состояние службы и файлы конфигурации.
Connection Timed Out
Указывает, что попытка подключения заняла слишком много времени.
- Причина: настройки фаервола, перегрузка сети или не отвечает сервер.
- Решение: проверьте правила фаерво ла, конфигурации сети и сервера. ответная реакция.
No Route to Host
Указывает на невозможность связаться с хостом назначения.
- Причина: неправильная таблица маршрутизации или неправильная конфигурация сети.
- Решение: проверьте таблицы маршрутизации с помощью
route
илиip route
.
Host Unreachable
Аналогично «Нет маршрута к хосту» означает невозможность добраться до места назначения.
- Причина: неправильная конфигурация сети или неправильный IP-адрес.
- Решение: проверьте конфигурацию IP и настройки сети.
Ports
Opening a Port
sudo ufw allow <port_number>
or
firewall-cmd --add-port=<port_number>/tcp
or
iptables -A INPUT -p tcp --dport <port_number> -j ACCEPT
List All Open Ports
netstat -lntu
or
ss -lntu
- all listening sockets (
-l
) - the port number (
-n
) - TCP ports (
-t
) - UDP ports (
-u
)
Check Port
ls | nc -l -p <port_number>
or
telnet localhost <port_number>
or
nmap localhost -p <port_number>
To Check The Availability of a Port on a Remote Server
cat < /dev/tcp/<server-ip-or-dns>/<port>
Если порт открыт: команда подключится к
example.com
через порт80
(порт HTTP). Если соединение успешное, оно будет ожидать ввода или вывода. При необходимости вы можете отправлять HTTP-запросы или другие данные.