.. назва: Методологія усунення несправностей мережі - системний підхід .. slug: методологія усунення неполадок у мережі .. дата: 2026-02-02 18:00:00 UTC .. теги: мережа, усунення несправностей, методологія, діагностика .. категорія: статті .. посилання: .. опис: систематичний науковий підхід до усунення несправностей мережі, який запобігає втраті часу та неправильним виправленням .. тип: текст
Проблема:Програма бази даних "повільна". Команда мережі звинувачує команду сервера. Команда сервера звинувачує мережу. Тим часом користувачі розчаровані, а години витрачаються на циклічне налагодження.
Рішення:Систематичний, науковий підхід до усунення несправностей, який використовує докази, а не припущення, щоб визначити основні причини.
Вартість випадкового усунення несправностей:Витрачений час, неправильні виправлення, які маскують реальні проблеми, вказування пальцями між командами та погіршення взаємодії з користувачем.
Усунення несправностей у мережі — це в основному вправа наукового методу:
У цій статті наведено структуровану структуру для усунення несправностей мережі, яка запобігає таким поширеним помилкам, як:
Перш ніж заглибитися в технічну діагностику, дайте відповідь на ці п’ять важливих запитань, щоб звузити сферу дослідження:
Зміни конфігурації? Нове обладнання? Оновлення програмного забезпечення? Зміни топології?
Один користувач? Одна будівля? Всі? Лише конкретне застосування?
Трапляється весь час? Тільки в певні години? Випадкові випадки?
Чи можете ви викликати проблему на вимогу?
Перевірте обидва кінці з’єднання
Модель OSI забезпечує структуровану структуру для усунення несправностей. Працюйте від Рівня 1 (Фізичний) вгору або від Рівня 7 (Додаток) вниз, залежно від симптомів.
Коли використовувати:Повна втрата з’єднання, відсутність індикатора з’єднання або симптоми фізичного рівня
show interfaces, ethtool eth0show mac address-table, show spanning-treeping, traceroute, show ip routetelnet host port, netstat -an, захоплення пакетівnslookup, dig, curl -vКоли використовувати:Проблеми, пов’язані з програмою, де існує базове підключення
Почніть із рівня 7 (чи запущена служба SharePoint? DNS вирішує виправити IP-адресу?) і перейдіть лише за потреби.
Використовуйте це дерево швидкої діагностики, щоб визначити, який рівень несправний:
Стек TCP/IP не працює. Перевірити служби ОС, перевстановити мережеві драйвери.
NIC вимкнено, драйвер неправильний, кабель від’єднано. перевірити:ip link showабо Диспетчер пристроїв
Перевірте: фізичний кабель, стан порту комутатора, призначення VLAN, таблицю ARP
Перевірте: таблицю маршрутизації, правила брандмауера, ACL. використанняtracerouteщоб знайти, де зупиняються пакети
Перевірте: налаштування DNS-сервера, доступність DNS-сервера, брандмауер блокує порт 53
Перевірте: правила брандмауера, групи безпеки, службу, що прослуховує порт
Проблема пов’язана з самою програмою, автентифікацією або конфігурацією програми
Якщо у вас є гіпотеза про першопричину, використовуйте ці методи ізоляції, щоб підтвердити або спростувати її:
Збирайте трафік у джерелі, проміжних точках і пунктах призначення, щоб визначити, де пакети відкидаються або змінюються:
# Capture on client
tcpdump -i eth0 -w client.pcap host server.example.com
# Capture on server
tcpdump -i eth0 -w server.pcap host client.example.com
# Compare:
# - Do packets leave client? (check client.pcap)
# - Do packets arrive at server? (check server.pcap)
# - If yes/no: problem is in the path between
# - If yes/yes but server doesn't respond: server-side issue
Усуньте зовнішні змінні, перевіривши підключення в одному пристрої:
# Test TCP stack without network
ping 127.0.0.1
# Test application listening locally
telnet localhost 80
# Test loopback on network interface (if supported)
# Some NICs support physical loopback for Layer 1 testing
Порівняйте конфігурацію та поведінку з робочою системою:
# Compare interface settings
diff <(ssh working-switch "show run int gi1/0/1") \
<(ssh broken-switch "show run int gi1/0/1")
# Compare routing tables
diff <(ssh router1 "show ip route") \
<(ssh router2 "show ip route")
Належна документація запобігає циклічному налагодженню, коли ви намагаєтеся те саме кілька разів, не усвідомлюючи цього.
Ідентифікатор проблеми: TICKET-12345
Дата/час: 2026-02-02 14:30 UTC
Повідомив: Jane Smith (jane.smith@company.com)
Постраждалі користувачі: ~50 users in Building A, 3rd floor
Симптом: Cannot access file server \\fileserver01
Початкові спостереження:
- Issue started around 14:00 UTC
- Only affects Building A, 3rd floor
- Other buildings can access fileserver01
- Ping to fileserver01 (10.1.50.10) times out from affected users
- Ping to default gateway (10.1.30.1) succeeds
Виконані тести:
1. [14:35] Checked switch port status: gi1/0/15 is UP/UP
2. [14:38] Checked VLAN assignment: Port is in VLAN 30 (correct)
3. [14:42] Checked interface errors: 1,234 CRC errors on gi1/0/15
4. [14:45] Replaced patch cable - still seeing CRC errors
5. [14:50] Moved uplink to different port (gi1/0/16) - errors persist
6. [14:55] Checked fiber cleanliness - dirty connector found
Основна причина:
Dirty fiber connector on uplink between Building A floor switch
and distribution switch causing CRC errors and packet loss
роздільна здатність:
Cleaned fiber connector with proper cleaning kit. CRC errors
dropped to zero. File server access restored.
Перевірка:
Users confirmed file server accessible. Monitored for 15 minutes
with no errors.
Час вирішення: 25 minutes
Час відгуку програми бази даних зменшився з <100 мс до 5+ секунд. Команда додатка звинуватила "затримку мережі".
Буфери ОС сервера бази даних були замалі для продукту високої пропускної здатності × затримки. Вікно TCP заповнюється, змушуючи відправника чекати.
# Increased TCP receive buffers on Linux database server
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.core.rmem_max=16777216
Не припускайте:«Повільно» не завжди означає «затримку мережі». Завжди збирайте докази (ping для визначення затримки, захоплення пакетів для поведінки), перш ніж робити поспішні висновки.
З’єднання з сервером випадково втрачалося, особливо під навантаженням. Іноді працювало нормально, іноді взагалі не реагувало.
Помилка автоматичного узгодження. Сервер домовився про повний дуплекс, комутатор повернувся до напівдуплексного режиму. Зіткнення відбувалися лише під навантаженням, коли обидві сторони намагалися передавати одночасно.
! Cisco switch - force full duplex
interface GigabitEthernet1/0/10
speed 1000
duplex full
Перевірте обидва кінці:Статус інтерфейсу показує узгоджені налаштування. Невідповідність означає помилку автоматичного узгодження. Завжди встановлюйте жорсткий код швидкості/дуплексу для серверів.
Користувачі могли переглядати одні веб-сайти (Google, Yahoo), але не могли переглядати інші (веб-сайт банку, портал компанії). Невеликі HTTP-запити працювали, великі сторінки минув.
ping -M do -s 1472вдається,ping -M do -s 1473не вдаєтьсяТунель VPN зменшив MTU до 1400, але брандмауер блокував повідомлення ICMP «Потрібна фрагментація». Шлях MTU Discovery (PMTUD) не міг працювати, створюючи чорну діру MTU. Маленькі пакети підходять, великі пакети з установленим бітом DF мовчки відкидаються.
! Implemented TCP MSS clamping on router
interface Tunnel0
ip tcp adjust-mss 1360
! Alternative: Allow ICMP Type 3 Code 4 through firewall
access-list 101 permit icmp any any packet-too-big
Розмір має значення:Якщо невеликі запити працюють, але великі передачі не вдаються, підозрюйте проблеми з MTU/фрагментацією. Використовуйте ping із бітом DF, щоб перевірити MTU шляху.
Голосові дзвінки мали переривчастий звук, періодичні перерви. Відбувається лише в робочий час (з 9:00 до 17:00).
Політика QoS існувала, але пропускна здатність розподілялася у зворотному напрямку: найкраще – 60%, голос – 5%. У робочий час, коли трафік даних збільшився, голосові пакети відкидалися через переповнення черги.
! Corrected QoS policy
policy-map WAN-QOS
class VOICE
priority percent 33
class VIDEO
bandwidth percent 25
class CRITICAL-DATA
bandwidth percent 20
class class-default
bandwidth percent 22
Проблеми на основі часу = ємність:Якщо проблеми виникають лише в години напруженої роботи, це не серйозний збій, а проблема ємності/QoS. Перевірте статистику черги, а не лише загальну пропускну здатність.
| Симптом | Шар | Команди для запуску | Що шукати |
|---|---|---|---|
| Немає індикатора посилання | 1 шар | show interfaces |
Статус: не працює, немає носія, кабель від’єднано |
| Втрата пакетів | Шар 1/2 | show interfaces |
Помилки CRC, ранти, гіганти, зіткнення, пізні зіткнення |
| Не вдається перевірити ping шлюзу | 2 шар | arp -a |
Немає запису ARP, MAC не розпізнано, STP блокується |
| Не вдається отримати доступ до віддаленої підмережі | 3 шар | traceroute |
Відсутній маршрут, неправильний наступний крок, петля маршрутизації |
| Підключення відмовлено | 4 шар | telnet host port |
Служба не прослуховує, брандмауер блокує, TCP RST |
| Повільна продуктивність | Шар 4+ | ping (RTT) |
Висока затримка, обмеження пропускної здатності, повторна передача TCP, нуль вікон |
| Не вдається розпізнати ім’я хоста | Шар 7 | nslookup |
Сервер DNS недоступний, неправильна конфігурація DNS, NXDOMAIN |
| Переривчасті краплі | Шар 1/2 | ping -f (flood) |
Невідповідність дуплексу, збій кабелю, повторна конвергенція STP |
| Інколи працює, інколи ні | множинний | Extended ping |
Проблема балансування навантаження, асиметрія ECMP, переповнення таблиці станів |
Знайте, коли передати проблему TAC постачальника або старшим інженерам. Ескалація, коли:
Кожен сеанс усунення несправностей – це можливість навчитися. Створіть особисту базу знань:
# Example structure
~/troubleshooting-journal/
├── 2026-01-15-duplex-mismatch.md
├── 2026-01-22-mtu-black-hole.md
├── 2026-02-02-tcp-window-exhaustion.md
└── README.md # Index of all issues
# Each file contains:
# - Symptom
# - Diagnostic steps
# - Root cause
# - Resolution
# - Lessons learned
# - Related tickets/documentation
Упорядкуйте часто використовувані команди за сценарієм для швидкого використання під час усунення несправностей.
Зміна конфігурацій без розуміння проблеми часто погіршує ситуацію або маскує справжню проблему.
Часто «проблеми з мережею» пов’язані з проблемами програми, сервера чи клієнта. Зберіть докази, перш ніж прийняти провину.
Ви витрачаєте час на повторення вже зроблених тестів або не зможете пояснити колегам, що ви пробували.
Періодичні проблеми часто є ранніми попереджувальними ознаками майбутньої невдачі. Дослідіть їх, перш ніж вони стануть критичними.
Перезавантаження пристрою може відновити службу, але якщо ви не з’ясуєте, ЧОМУ було потрібно перезавантаження, проблема повториться.
Усунення несправностей мережі – це і наука, і мистецтво. Наука дотримується систематичної методології, правильно використовує інструменти діагностики та розуміє протоколи. Мистецтво полягає в тому, щоб знати, які тести проводити в першу чергу на основі симптомів, розпізнавати шаблони з досвіду та знати, коли посилити.
Дотримуючись систематичного підходу, викладеного в цій статті — ставлячи правильні запитання, методично опрацьовуючи модель OSI, документуючи свої кроки та навчаючись на кожній проблемі, ви станете ефективнішими у вирішенні проблем і уникнете типових пасток, які призводять до марної втрати часу та неправильних виправлень.
Пам'ятайте:Мета полягає не просто у відновленні служби, а в тому, щоб зрозуміти, ЧОМУ сталася помилка, щоб ви могли запобігти повторенню цього.
Останнє оновлення: 2 лютого 2026 р. | Автор: технічна команда Baud9600