Методологія усунення несправностей мережі: Системний підхід

Чому методологія матриць

Проблема: Додаток бази даних «повільно». Команда мережі відмовляється від команди сервера. Команда сервера відправляє мережу. Тим не менш, користувачі розчаровані, і години були відведені в круговому відбілювання.

Рішення: Системний, науковий підхід до усунення неполадок, що використовує докази, не припущення, для виявлення причин кореня.

Вартість усунення несправностей Haphazard: Відпрацьований час, невірно фіксує, що маскує реальні проблеми, пальцем-точування між командами та деградованим досвідом користувача.

Вступ: Науковий метод, що застосовується до мереж

Усунення мережевих неполадок є фундаментально вправою в науковому методі:

  1. Опитування симптоми і збирати дані
  2. Форма гіпотези про першопричину
  3. Тест гіпотези з діагностичними інструментами
  4. Аналіз результатів і підтвердити або відхилити гіпотезу
  5. Впровадження виправлення на основі підтвердженої першопричини
  6. Видання проблема вирішується

У статті передбачено структуровані рамки для усунення неполадок мережі, що запобігає поширенню підводних каменів:

П'ять ключових питань

Перед тим як дайвінг в технічну діагностику, відповідь на ці п'ять критичних питань для звуження сфери дослідження:

Питання 1: Що змінено

Зміни конфігурації? Новий апарат? Оновлення програмного забезпечення? Топологічні модифікації?

  • Перевірка журналів управління змінами
  • Огляд останніх рішень в системах управління конфігурацією
  • Запитайте: "Чи він працює вчора?"
й
Питання 2: Хто?

Один користувач? Один будинок? Хто? Особливе застосування тільки?

  • Один пристрій: Як і локальний номер (NIC, кабель, конфігурація)
  • Один субнет: Шлюз, DHCP або випуск перемикача
  • Всі: Основна інфраструктура, ISP або поширена проблема
  • Технічний додаток: Сервер додатків, правило брандмауера або DNS
Питання 3: Чи є він Постійний або інтервмітент?

Весь час Тільки протягом певних годин? Випадкові причини?

  • Постійний: Жорсткий збій (знімний крій, неправильне налаштування, вниз обслуговування)
  • На основі часу: Витрата під час робочих годин, планові процеси
  • Інтермітент/Рандом: Duplex mismatch, не вдається обладнання, інтермітент посилання
Питання 4: Чи можна його відродити?

Чи можна викликати проблему на вимогу?

  • Так: Чим простіше діагностувати (повідомити гіпотези)
  • Ні: Налаштуйте моніторинг / запис та чекайте на повторення
Питання 5: Що таке інше?

Перевірити обидва кінці з'єднання

  • Перспектива клієнта проти серверу
  • Захоплення Packet на джерело проти призначення
  • Асиметрична маршрутизація? Різні шляхи відправки проти отримання?

Модельний підхід OSI

Модель OSI забезпечує структуровану раму для усунення несправностей. Робота від шару 1 (Фізична) вгору, або від шару 7 (додаток) вниз, в залежності від симптомів.

Підхід знизу (Layer 1 → Шар 7)

При використанні: Повна втрата зв'язку, відсутність зв'язку світла, або симптоми фізичного шару

Шар 1: Фізичний
  • Перевірити: Кабель підключений? Посилання вогнів на? Чистий волокна?
  • Команди: show interfacesй ethtool eth0
  • Дивитися: CRC помилки, зіткнення, пізні зіткнення, бігти, гіганти
Статус на сервери
  • Перевірте: Правильний VLAN? Порт ввімкнено? Блокування STP?
  • Команди: show mac address-tableй show spanning-tree
  • Дивитися: MAC муфта, STP топологічні зміни, VLAN mismatches
Шар 3: мережа
  • Перевірте: Чи можна ping за замовчуванням шлюзу? Маршрутний столик правильно?
  • Команди: pingй tracerouteй show ip route
  • Шукаємо: Місячні маршрути, некоректний наступний хміль, вирощувальні петлі
Шар 4: Транспорт
  • Перевірте: Чи можна встановити підключення TCP? Порт блокування брандмауера?
  • Команди: telnet host portй netstat -an, захоплення пакета
  • Дивитися: TCP ретрансмісії, нульові вікна, RST пакети
Шар 5-7: Сесія/Презентація/Застосування
  • Перевірити: DNS розв'язання? Відповідаючи заявку? Ауттентична робота?
  • Команди: nslookupй digй curl -v
  • Дивитися: DNS несправності, помилки додатків, часові питання

Кращий підхід (Layer 7 → Шар 1)

При використанні: Застосування-специфічні проблеми, де існує базова сумісність

Приклад: "Я можу переглянути інтернет, але я не можу доступу до компанії SharePoint сайт."

Старт на Layer 7 (Is SharePoint працює? Вирішити DNS виправити IP?) і працювати лише за потреби.

Рішення Дерево: Чи є це шар 1, 2, або 3?

Використовуйте це швидке діагностичне дерево, щоб визначити, який шар не вдається:

Чи можете ви ping localhost (127.0.0.1)?
й
Проблеми: Операційна система / програмне забезпечення

TCP/IP не функціонує. Перевірте служби OS, перевстановити мережеві драйвери.

й
Чи можна ви пінгувати власну IP-адресу?
↓ NO
Problem: Шар 1/2 - Інтерфейс локальної мережі

NIC відключений, неправильний драйвер, кабель не розгорнув. Зареєструватися ip link show або диспетчер пристроїв

↓ YES
Чи можна ви ping за замовчуванням шлюзу?
↓ NO
Проблеми: Шар 1/2 - локальна мережа

Перевірити: Фізичний кабель, переключення статусу порту, VLAN призначення, ARP стіл

↓ YES
Чи можна ping віддалений хост IP-адреси?
↓ NO
Проблем: Шар 3 - Маршрутизація

Перевірити: Таблиця маршрутизації, правила брандмауера, ACL. Зареєструватися traceroute щоб знайти де зупинитись у пачці

↓ YES
Чи можливо ви вирішите DNS (nslookup hostname)?
↓ NO
Problem: Налаштування DNS

Перевірити: Налаштування сервера DNS, доступність сервера DNS, порт блокування брандмауера 53

↓ YES
Чи можна ви дістатися до порту додатків (телеканал хост)?
↓ NO
Проблем: брандмауер / Порт блокування

Перевірити: Правила брандмауера, групи безпеки, послуги прослуховування на порту

↓ YES
Мережа ОК - Випуск шарів додатків

Проблема - це сама програма, автентифікація або налаштування додатків

Техніка ізоляції

Якщо у вас є гіпотеза про першопричину, скористайтеся цими методами ізоляції, щоб підтвердити або відхилити її:

1. Замінити компоненти Системно

Порада: Зміна ONE змінної в часі. Якщо ви затискаєте як кабель, так і порт вимикача, ви не знаєте, що його закріпили.

2. Захоплення Packet на декількох точках

Захоплення трафіку на джерело, проміжні точки та призначення для визначення, де пачки падають або модифіковані:

# 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

3. Тестування помилок

Використовуються зовнішні змінні шляхом тестування підключення до одного пристрою:

# 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

4. Знайте доброї базиліки Порівняння

Порівняти конфігурацію та поведінку від робочої системи:

# 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")

Документація Під час усунення несправностей

Правильна документація запобігає прискоренню кругових відкладень, де ви намагаєте те ж саме кілька разів без її реалізації.

Шаблон усунення несправностей

Issue ID: TICKET-12345 Date/Time: 2026-02-02 14:30 UTC Reported By: Jane Smith (jane.smith@company.com) Affected Users: ~50 users in Building A, 3rd floor Symptom: Cannot access file server \\fileserver01 Initial Observations: - 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 Tests Performed: 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 Root Cause: Dirty fiber connector on uplink between Building A floor switch and distribution switch causing CRC errors and packet loss Resolution: Cleaned fiber connector with proper cleaning kit. CRC errors dropped to zero. File server access restored. Verification: Users confirmed file server accessible. Monitored for 15 minutes with no errors. Time to Resolution: 25 minutes
Чому документація матриць: Без цього запису, наступного разу хтось бачить помилки CRC на цьому перемикачі, вони можуть витрачати час на заміну кабелів і випробувальних портів замість негайного перевірки клітковини чистоти.

Real-World Case Дослідження

Case Study 1: "The Network is Slow" (Важливо: Витяг вікна TCP)

Симптом

Терміни відповіді на використання бази даних від <100ms до 5+ секунд. Заявка на участь у тендері "мережі."

Початкові припущення (Wrong)

Діагностичний процес

  1. Тестування Ping: RTT = 2ms (випробувано, виконайте виконання шарів 3)
  2. Тест пропускної здатності (iperf): 950 Мбіт/с на 1 Гбіт/с посилання (без застібки)
  3. захоплення пакета: Перевірені TCP Zero Window пакети з сервера бази даних
  4. Перевірка сервера: Сервер бази даних отримує буфери = 64KB (ціна!)

Коричневий

Сервер бази даних OS Buffers були занадто малими для високої пропускної здатності / затримки продукту. Вікно 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

Уроки

Не припустимо: "Повільний" не завжди означає "мережу". Завжди збирають докази (підтримка затримки, захоплення пакета для поведінки) перед стрибком до висновків.

Case Study 2: Міжвідомча роз'єм (актуально: Duplex Mismatch)

Symptom

З'єднання сервера буде випадковим чином, особливо під навантаженням. Часом працював дрібний, іноді повністю невідповідний.

Initial Assumptions (Wrong)

Diagnostic Process

  1. Перевірка інтерфейсу: Сервер NIC = 1000/Повний, перемикачовий порт = 1000/Half (mismatch!)
  2. Помилка лічильників: Масивний облік зіткнення на перемикачовому порту
  3. Зіткнення: Індикатор дуплексної невідповідності

Root Cause

Автопоїзд не вдалося. Сервер веде переговори з повним дуплексом, перемикач знизився на півдуплекс. У зв’язку з тим, що обидві сторони намагалися одночасно передавати.

Resolution

! Cisco switch - force full duplex interface GigabitEthernet1/0/10 speed 1000 duplex full

Lesson Learned

Перевірити обидва кінці: Статус на сервери Нездійснено неправильне з’єднання. Завжди швидкість жорсткого коду/duplex для серверів.

Випадкові дослідження 3: "Чи нема певних веб-сайтів" (включно: MTU/PMTUD Black Hole)

Symptom

Користувачі можуть переглядати деякі веб-сайти (Google, Yahoo), але не інші (банківський сайт, портал компанії). Потрібні HTTP-запити працювали, великі сторінки, що закінчилися.

Initial Assumptions (Wrong)

Diagnostic Process

  1. Розширення DNS: Працює відмінно для всіх сайтів
  2. Тестування Ping: Чи можна пінгувати сайти «необхідні»
  3. Невеликий запит HTTP (керівник): Роботи для невеликих сторінок
  4. Велике завантаження: Парти після TCP
  5. Тест МТУ: ping -M do -s 1472 успіхи, ping -M do -s 1473 з
  6. Моніторинг ICMP: No "Fragmentation Needed" (Тип 3 Код 4) повідомлення отримали

Root Cause

VPN тунель зменшено MTU до 1400, але брандмауер був блокуючий ICMP "Фрагментація потрібних" повідомлень. Шлях MTU Discovery (PMTUD) не може працювати, створюючи чорний отвір MTU. Невеликі пакети підходять, великі пакети з набором DF були безглуздими.

Resolution

! 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

Lesson Learned

Розміри: Якщо невеликі запити працюють, але великі перекази не можуть, підозрюють у питаннях МТУ/фрагментації. Використовуйте пінг з бітом DF, щоб перевірити шлях MTU.

Case Study 4: Проблеми якості VoIP (актуально: QoS Misconfiguration)

Symptom

Голосові дзвінки мали хоппірний аудіо, переривчасті краплі. За час роботи (9am-5pm).

Initial Assumptions (Wrong)

Diagnostic Process

  1. Тест пропускної здатності: Посилання тільки 40%, що використовуються під час зайнятості
  2. Огляд QoS: Голосовий трафік, позначений DSCP EF (46) правильно
  3. Перевірка запитів: Голосова черга мала лише на 5% перебігу (до 33%)
  4. захоплення пакета: Голосові пакети падають під час застібки

Root Cause

Політика QoS існувала, але розподіл пропускної здатності була заново: найкраща пам'ятка отримала 60%, голос отримав 5%. За час роботи, коли збільшився трафік даних, розпущені голосові пакети через перекриття черги.

Resolution

! 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

Lesson Learned

Термінові питання = потужність: Якщо виникають проблеми під час зайнятих годин, це не тверда відмова, але й питання ємності/QoS. Перевірити статистику черги, не тільки загальна пропускна здатність.

Симптом

Симптом Р Команди для запуску Що дивитися
Немає посилання світла Шар 1 show interfaces
ethtool eth0
Статус: вниз, немає перевізника, кабель не розгорнув
Збиток пакета Шар 1/2 show interfaces
show interfaces counters errors
CRC помилки, рункі, гіганти, зіткнення, пізні зіткнення
Чи не пінг шлюз Шар 2 arp -a
show mac address-table
show spanning-tree
No ARP запис, MAC не навчався, блокування STP
Не досягнете віддаленої підмережі Шар 3 traceroute
show ip route
show ip route summary
Місячний маршрут, виворітний наступний хміль, петлі маршрутизації
З'єднання відмовлено Шар 4 telnet host port
netstat -an
tcpdump
Сервіс не слухайте, блок брандмауера, TCP RST
Повільна продуктивність Шар 4+ ping (RTT)
iperf3
tcpdump
show interfaces
Висока надійність, обмеження пропускної здатності, ретрансмісії TCP, нульові вікна
Чи не вирішувати ім'я хоста Шар 7 nslookup
dig
cat /etc/resolv.conf
DNS сервер ненадійне, неправильне налаштування DNS, NXDOMAIN
Міжмітентні краплі Layer 1/2 ping -f (flood)
show logging
show interfaces
Duplex mismatch, не вдається кабель, STP-відновлення
Працює іноді, не інші Кілька Extended ping
Packet capture
Interface statistics
Видача балансування навантаження, ЕКМП асиметрія, переповнення таблиці

Коли Escalate

Знайте, коли продавець TAC або старших інженерів. Ескорт при:

Перед проведенням: Ви спробуєте. Інженери TAC потребують такої інформації, щоб уникнути повторення ваших кроків. Включити:

Створення бази знань

Кожна сесія з усунення неполадок - це можливість навчання. Створення бази знань:

1. Створити журнал усунення несправностей

# 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

2. Побудувати командний знак

Організувати часто використовувані команди за сценарієм швидкого посилання під час усунення несправностей.

3. Документація вашої мережі

Загальні протипухлинні матеріали, щоб уникнути

浜у 涓 蹇

Зміна конфігурацій без розуміння проблеми часто робить речі гіршими або масками реального питання.

浜у 涓 蹇

Нерідко "мережеві питання" - це додаток, сервер або проблеми з клієнтами. Зберіть докази перед прийняттям полум'я.

❌ DON'T: Пропустити документування ваших кроків усунення несправностей

Ви вже зробили, або не зможете пояснити колегам, які ви спробували.

浜у 涓 蹇

Проблемні задачі часто є ранніми ознаками непередбачуваності. До того, як вони стали критичними.

❌ DON'T: Виправлення симптомів замість кореневих причин

Перезавантаження пристрою може відновити сервіс, але якщо ви не з`ясуєте, що це потрібно перезавантаження, проблема буде повторюватися.

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

✓ До початку

✓ Під час усунення несправностей

✓ Після постанови

Висновок

Усунення мережевих проблем – це наука і мистецтво. Наука має наступні систематичні методики, використовуючи діагностичні інструменти правильно, а також протоколи розуміння. Мистецтво знає, які тести для запуску перших за ознаками, розпізнаючи візерунки від досвіду, і знаючи, коли ескалувати.

Після того, як системний підхід, описаний в цій статті, — випробуєте правильні питання, працюючий методично через модель OSI, документуючи ваші кроки, і дізнаючись з кожного питання — ви станете більш ефективним при усунення несправностей і не допускати поширених підводних каменів, які призводять до часу і неправильних фіксацій.

Пам'яті: Ціль не просто відновити службу, але щоб зрозуміти, що вона не вдалося, тому ви можете запобігти його знову.


Останнє оновлення: 2 лютого 2026 Автор: Baud9600 Технічна команда