Network Troubleshooting Methodology - The Systematic Approach
Network Troubleshooting Methodology: La Sistema Aliro
Kial metodologio gravas
Problemo: Uzanta datumbazon estas "malrapida". La retteamo kulpigas la servilteamon. La servila teamo kulpigas la reton. Dume, uzantoj estas seniluziigitaj, kaj horoj estas malŝparitaj en cirkla malkonstruado.
La solvo: Sistema, scienca aliro al perturboj kiuj utiligas indicon, ne supozojn, por identigi radikkialojn.
La kosto de Haphazard Troubleshooting: Farita tempo, malĝustaj fiksas tiun maskon realaj problemoj, fingro-punkta inter teamoj, kaj degenerinta uzantsperto.
Enkonduko: La Scienca Metodo Aplikata al Reto
Reta perturbado estas principe praktikado en la scienca metodo:
- Observi La simptomoj kaj kolekti datumojn
- Formo hipotezo pri la radika kaŭzo
- La hipotezo kun diagnozaj iloj
- Analizi rezultojn konfirmi aŭ malakcepti la hipotezon
- Efektivigu fiksan surbaze de konfirmita radikkialo
- Traduki La problemo estas solvita
Tiu artikolo disponigas strukturitan kadron por sendostaciaj perturboj kiuj malhelpas oftajn faltruojn kiel:
- Confirmation biaso (aspektanta nur por indico kiu apogas vian komencan konjekton)
- Hazardaj ŝanĝoj sen diagnozo (la "spray kaj preĝas" aliro)
- Fixing-simptomoj anstataŭe de radikkialoj
- Cirkla malkonstruante sen dokumentado kio estas provita
Kvin gravaj demandoj
Antaŭ plonĝado en teknikajn testojn, respondas tiujn kvin kritikajn demandojn por malvastigi vian enketoskopon:
Ĉu la ŝanĝoj? Ĉu nova aparataro? Ĉu komputiloj ĝisdatigas? Topologio modifoj?
- Kontrolu ŝanĝi administradajn tagalojn
- Revizio lastatempa faras en konfiguracio-administradsistemoj
- Demandu: “Ĉu vi laboras hieraŭ?”
Unu uzanto? Ĉu unu konstruaĵo? Ĉiu? Specifa aplikaĵo nur?
- Unu aparato: Kiel loka temo (NIC, kablo, konfiguracio)
- Unu subreto: Gateway, DHCP, aŭ ŝanĝtemo
- Ĉiuj: Kerna infrastrukturo, ISP, aŭ ĝeneraligita temo
- Specifa app: Apliki servilon, fajromuron, aŭ DNS
Ĉu okazas la tutan tempon? Ĉu nur dum kelkaj horoj? Ĉu hazardaj okazoj?
- Konstanta: Malfacila fiasko (kapabla tranĉo, miskonfiguracio, malsupren servo)
- Tempo-bazita: Congestion dum komerchoroj, planitaj procezoj
- Intermittent/Random: Dupleksa misagordo, malsukcesante hardvaron, intermitan ligon
Ĉu vi povas ekigi la problemon sur postulo?
- Jes, jes: Multe pli facile diagnozi (povaj testhipotezoj)
- Neniu: Dividi monitoradon/vesti kaj atendi ripetiĝon
Kontrolu ambaŭ finoj de la ligo
- Kliento perspektivo vs. servila perspektivo
- Pakaĵo kaptas ĉe fonto vs. celloko
- Malsimetria rouing? Malsamaj vojoj por sendi vs. ricevi?
OSI Model-bazita Diagnostic Approach
La OSI-modelo disponigas strukturitan kadron por maltrankviliĝoj. Laboro de Layer 1 (Physical) supren, aŭ de Layer 7 (Application) malsupren, depende de simptomoj.
Bottom-Up Aliro (Layer 1 → Layer 7)
Kiam oni uzas: Kompleta konektebleco perdo, neniu ligolumo, aŭ fizika tavolo simptomoj
- Vidu: Kablo konektita? Ligiloj sur? Fibro pura?
- Komandoj:
show interfaces,ethtool eth0 - Vidu: CRC-eraroj, kolizioj, malfruaj kolizioj, runtoj, gigantoj
- Vidu: Kortujo VLAN? Ĉu UEA permesas? Ĉu UEA blokis?
- Komandoj:
show mac address-table,show spanning-tree - Vidu: MAC-klamado, STP topologioŝanĝoj, VLAN misagloj
- Kontrolu: Ĉu vi povas uzi defaŭltan enirejon? Ĉu la tablo estas ĝusta?
- Komandoj:
ping,traceroute,show ip route - Vidu: Mankantaj itineroj, malĝusta venonta-hopo, routing bukloj
- Vidu: Ĉu povas establi TCP-ligon? Fajromuro blokanta havenon?
- Komandoj:
telnet host port,netstat -anpakaĵeto kaptas - Vidu: TCP redissendas, nulfenestrojn, RST-pakaĵetojn
- Kontrolu: DNS-solvo? Ĉu vi povas respondi? Aŭtentiga laboro?
- Komandoj:
nslookup,dig,curl -v - Vidu: DNS-fiaskoj, aplikiĝeraroj, ĝustatempaj temoj
Top-Down Approach (Layer 7 → Layer 1)
Kiam oni uzas: Apliko-specifaj problemoj kie baza konektebleco ekzistas
Komencu ĉe Layer 7 (Estas SharePoint-servo kuranta? DNS-solvo por korekti IP?) kaj labori malsupren nur se bezonite.
La decida arbo: Ĉu ĝi estas 1, 2, aŭ 3?
Uzu tiun rapidan diagnozan arbon por identigi kiu tavolo malsukcesas:
TCP/IP-stako ne funkcias. Kontrolu OS-servojn, reinstalu retŝoforojn.
NIC handikapita, malĝusta ŝoforo, kablo malligita. Kontrolu: ip link show aŭ Device Manager
Vidu: Fizika kablo, ŝalti havenstatuson, VLAN-taskojn, ARP-tablon
Vidu: Routing Table, firewall reguloj, ACLoj. Uzo de uzo traceroute Por trovi kie pakaĵetoj ĉesas
Vidu: DNS-servilvaloroj, DNS-servilhavebleco, fajromuro blokanta havenon 53
Vidu: Firewall-reguloj, sekurecaj grupoj, servo aŭskultanta sur haveno
Problemo estas kun la aplikiĝo mem, konfirmo, aŭ aplikiĝkonfiguracio
Isolvaj teknikoj
Kiam vi havas hipotezon pri la radika kaŭzo, uzu tiujn izolajn teknikojn por konfirmi aŭ malakcepti ĝin:
Replace Components Systematally
- Swap pecetkablo kun konata-bona kablo
- Testo sur malsama ŝalti haveno
- Provu malsaman NIC (aŭ USB reto adaptilo)
- Testo de malsama kliento aparato
- Moviĝu al malsama VLAN/subreto
2. Packet Captures ĉe Multoblaj punktoj
Kapti trafikon ĉe fonto, mezaj punktoj, kaj celloko identigi kie pakaĵetoj estas faligitaj aŭ modifitaj:
# 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. Loopback Testing
Elimini eksterajn variablojn testante konekteblecon ene de ununura aparato:
# 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. Known-Good Baseline Comparisons
Komparita konfiguracio kaj konduto kontraŭ laborsistemo:
# 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")
Dokumentado dum Problemoj
Properdokumentaro malhelpas cirklan malkonstruadon kie vi provas la saman aĵon multoblaj tempoj sen realigado de ĝi.
Problemoj:
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
Real-World Case Studies
Case Study 1: "La Reto estas malrapida" (Atulio: TCP Window Exhaustion)
Simbolo
Datumbazo-aplikaĵo tempoj degradis de <100ms ĝis 5+ sekundoj. Aplikiĝteamo kulpigis "netlaborlatentecon."
Komencaj Ĉieliroj (Wrong)
- Reta obstrukciĝo
- WAN ligo saturita
- Fajromura botelo
Diagnoza proceso
- Ping-testo: RTT = 2ms (elstaranto, regas Layer 3 latentecon)
- Bandwidth-testo (iperf): 950 Mbps sur 1 Gbps-ligo (neniu obstrukciĝo)
- Pakta kapto: Revealed TCP Zero Window pakas de databaseservilo
- Servila inspektado: Datumilo ricevas bufrojn = 64KB (tiny!)
Radia Kaŭzo
Datumaĵservilo Os bufroj estis tro malgrandaj por alt-bandwidth × prokrastprodukto. TCP-fenestro plenigus, devigante senditon atendi.
Rezolucio de rezolucio
# Increased TCP receive buffers on Linux database server
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.core.rmem_max=16777216
Leciono lernis
Ne supozu: "Malrapida" ne ĉiam signifas "reto-latentecon". Ĉiam kolektas indicon (ping por latenteco, pakaĵasimilado por konduto) antaŭ saltado al konkludoj.
Kazesploro 2: Intermittent Connectivity (Actually: Dupleksa Misaglo)
Symptom
Servilligo falus hazarde, precipe sub ŝarĝo. Foje li laboris bone, foje tute ne respondema.
Initial Assumptions (Wrong)
- Malsukcesa NIC
- Malbona kablo
- Ŝanĝita aparataro
Diagnostic Process
- Interfa inspektado: Servilo NIC = 1000/Full, Switch-haveno = 1000/Half (misagordo!)
- Eraro kontraŭs: Masiva koliziokalkulo sur ŝalti havenon
- Malfruaj kolizioj: Indikisto de dupleksa misagordo
Root Cause
Aŭto-traktado malsukcesis. Servilo negocis plen-dupleksan, ŝanĝon falis reen al duon-dupleksa. Kolizioj nur okazis sub ŝarĝo kiam ambaŭ flankoj provis elsendi samtempe.
Resolution
! Cisco switch - force full duplex
interface GigabitEthernet1/0/10
speed 1000
duplex full
Lesson Learned
Kontrolu ambaŭ finoj: Interfa statuso montras la negocitajn valorojn. Misagordo signifas aŭto-traktado malsukcesis. Ĉiam malmola-kodrapideco/dupleksa por serviloj.
Case Study 3: " Can't Reach Certain Websites" (Actually: MTU/PMTUD Black Hole)
Symptom
Uzantoj povis foliumi kelkajn retejojn (Google, Yahoo) sed ne aliajn (bankretejo, firmaoportalo). Malgrandaj HTTP-petoj laboris, grandaj paĝoj tempigis.
Initial Assumptions (Wrong)
- DNS-temo
- Firewall blokanta specifajn ejojn
- ISP rouing Problemo
Diagnostic Process
- DNS-rezolucio: Estas bone por ĉiuj retejoj
- Ping-testo: Povas ping la "nereakeblaj" ejoj
- Malgranda HTTP-peto (curl): Verkoj por malgrandaj paĝoj
- Granda elŝuto: Stalls post TCP manhake
-
MTU testo:
ping -M do -s 1472sukcesis,ping -M do -s 1473malsukcesas - ICMP monitorado: Neniu "Fragmentation Needed" (Tie 3 Kodo 4) mesaĝoj ricevis
Root Cause
VPN-tunelo reduktis MTU al 1400, sed fajromuro blokis ICMP "Fragmentation Needed" mesaĝojn. Path MTU Discovery (PMTUD) ne povis labori, kreante MTU nigran truon. Malgrandaj pakaĵetoj konvenas, grandaj pakaĵetoj kun DF peceto metita estis silente faligitaj.
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
Konsideri aferojn: Se malgrandaj petoj laboras sed grandaj translokigoj malsukcesas, suspektu MTU/frakto-temojn. Uzu ping kun DF-peco por testi padon MTU.
Kazesploro 4: VoIP Quality Issues (Actually: QoS Misconfiguration)
Symptom
Voĉvokoj havis koluzian aŭdion, intermitajn gutojn. Nur okazis dum komercaj horoj (9am-5pm).
Initial Assumptions (Wrong)
- Nesufiĉa bendo
- VoIP-servilo troŝarĝita
- ISP ligas kvaliton
Diagnostic Process
- Bandwidth-testo: Nur 40% uzis dum okupata horo
- QoS-inspektado: Voĉotrafiko markita kun DSCP EF (46) ĝuste
- Queue inspektado: Voĉo atendovico havis nur 5% bendolarĝan asignon (devus esti 33%)
- Pakta kapto: Voĉoj estantaj faligitaj dum obstrukciĝo
Root Cause
QoS-politiko ekzistis sed bendolarĝsigno estis malantaŭen: plej bona-fort ricevis 60%, voĉo ricevis 5%. Dum komerchoroj kiam datentrafiko pliiĝis, voĉpakaĵetoj estis faligitaj pro atendofluo.
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
Tempo-bazitaj temoj = kapacito: Se problemoj nur okazas dum okupataj horoj, ĝi ne estas malmola fiasko sed kapacito/QoS-temo. Kontrolu atendostatistikon, ne nur totalan bendolarĝon.
Command Reference de Symptom
| Simbolo | Layer | Komandoj al Run | Kion serĉi |
|---|---|---|---|
| Neniu ligilo | 1 Layer | show interfaces |
Statuso: malsupren, neniu aviad-kompanio, kablo neligita |
| Plenkreda perdo | Layer 1/2 | show interfaces |
CRC-eraroj, runoj, gigantoj, kolizioj, malfruaj kolizioj |
| ne povas trovi enirejon | 2 Layer | arp -a |
Neniu ARP-eniro, MAC ne lernis, STP blokanta |
| ne povas atingi malproksiman subreton | 3 Layer | traceroute |
Mankanta itinero, malĝusta venont-hopo, routing buklo |
| Ligo rifuzis | 4 Layer | telnet host port |
Servo ne aŭskultante, fajromuro bloko, TCP RST |
| Malrapida efikeco | 4 + | ping (RTT) |
Alta latenteco, bendolarĝlimo, TCP redissendoj, nul fenestroj |
| Ne povas solvi mastron | 7 Layer | nslookup |
DNS-servilo neatingebla, malĝusta DNS konfig, NXDOMAIN |
| Intermetaj gutoj | Layer 1/2 | ping -f (flood) |
Dupleksa misagordo, malsukcesante kablon, STP-rekonverĝon |
| Kelkfoje, ne aliaj | Multoblaj | Extended ping |
Load balancanta temon, ECMP-simetrion, ŝtattablon superfluaĵo |
Kiam ĝi estas
Konata kiam al escalate al vendisto TAC aŭ altrangaj inĝenieroj. Ekrano kiam:
- Vi elĉerpis ĉiujn malfacilaĵojn en via scio bazo
- Temo postulas aliron/permesas ke vi ne havas
- Problemo implikas vendiston softvarcikon aŭ hardvardifekton
- Komerca efiko estas kritika kaj tempo-sentema
- Multoblaj teamoj devas kunlabori (apliko + reto + servilo)
- Kompleta simptoma priskribo
- Templinio de kiam temo komenciĝis
- Diagnozaj komandoj kuras kaj ilia produktaĵo
- Konfiguracio malantaŭeniras
- Pakaĵo kaptas (se signifa)
- Kion vi jam provis
Konstrui Vian Personaj Scio-Bazo
Ĉiu malfeliĉa sesio estas lerna ŝanco. Konstrui personan sciobazon:
1. Kreu Troubleshooting Journal
# 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 Konstruu Komandon Cheat Sheet
Organizi ofte-uzitajn komandojn per scenaro por rapida referenco dum krevigado.
3 Dokumentas Vian Reton
- Topology-diagramoj (Layer 2 kaj Layer 3)
- IP-adreso skemo dokumentaro
- VLAN-taskoj
- Normo konfiguracioj (templatoj)
- Konataj bazlinioj ( interaga statistiko antaŭ problemoj)
Oftaj kontraŭ- Padronoj Eviti
DON'T: Fari hazardajn ŝanĝojn sen diagnozo
Ŝanĝante konfiguraciojn sen komprenado de la problemo ofte faras aĵojn pli malbonaj aŭ maskas la realan temon.
DON'T: Assume la reto ĉiam estas ĉe kulpo
Ofte "ret temoj" estas apliko, servilo, aŭ kliento-flankaj problemoj. Gatero indico antaŭ akceptado de kulpigo.
DON'T: Haŭto dokumentanta viajn ĝenajn paŝojn
Vi perdos tempon ripetantan testojn kiujn vi jam faris, aŭ estos nekapabla klarigi al kolegoj kion vi provis.
DON'T: Ignoru intermitajn temojn
Intermittaj problemoj ofte estas fruaj avertantaj signoj de urĝa fiasko. Enketis ilin antaŭ ol ili iĝas kritikaj.
DON'T: Fix-simptomoj anstataŭe de radikkialoj
Rebatante aparaton eble restarigos servon, sed se vi ne trovas WHY ĝi bezonis restartigadon, la problemo ripetiĝos.
Resumo: La Systematic Troubleshooting Checklist
Antaŭ ol komenci
- Respondu la kvin esencajn demandojn (Kio ŝanĝiĝis? Kiu estas trafita? Ĉu konstantaj aŭ intermita? Reproducible? Kion vidas alia flanko?)
- Pliaj komencaj simptomoj kaj uzantraportoj
- Kontrolu novajn ŝanĝojn aŭ prizorgadon
Dum Problemoj
- Laboro metodike tra OSI-tavoloj ( fund-supren aŭ pint-malsupren)
- Ŝanĝo unu variablo en tempo dum testado
- Dokumentado ĉiu testo kaj ĝia rezulto
- Uzu pakaĵetojn por vidi faktan trafikkonduton
- Komparu kontraŭ konata-bonaj bazlinioj
Post rezolucio
- Konfirmigi la riparon fakte solvis la temon
- Dokumenta radika kaŭzo kaj rezolucio
- Ĝisdatigu vian scio bazo
- Se konfiguracio ŝanĝiĝis, ĝisdatigas dokumentadon
- Ĉu la monitoro povus kapti tion pli frue?
Konludo
Reta perturbado estas kaj scienco kaj arto. La scienco sekvas sisteman metodaron, uzante diagnozajn ilojn ĝuste, kaj komprenante protokolojn. La arto scias kiu testas kuri unue surbaze de simptomoj, rekonante padronojn de sperto, kaj sciante kiam al escalate.
Per sekvado de la sistema aliro skizita en tiu artikolo - rigardante la ĝustajn demandojn, laborante medie tra la OSI-modelo, dokumentante viajn ŝtupojn, kaj lernadon de ĉiu temo - vi iĝos pli efika ĉe perturboj kaj eviti la komunajn faltruojn kiuj kondukas al malŝparita tempo kaj malĝustaj fiksaj fiksaĵoj.
Memoru: La celo ne estas ĵus reestigi servon, sed kompreni WHY kiun ĝi malsukcesis tiel vi povas malhelpi ĝin okazi denove.
Last Updated: februaro 2, 2026 | Verkinto: Baud9600 Technical Team