Home » Network Troubleshooting Methodology: OSI Layer-by-Layer Approach
Network Troubleshooting Methodology: OSI Layer-by-Layer Approach
Network Troubleshooting Methodology: OSI Layer-by-Layer Approach
Network Troubleshooting เป็นทักษะหลักของ network engineers การมี methodology ที่เป็นระบบช่วยให้แก้ปัญหาได้เร็วและแม่นยำ OSI Layer-by-Layer Approach เริ่มจาก Physical Layer (L1) ขึ้นไปจนถึง Application Layer (L7) ตรวจสอบทีละ layer จนเจอ root cause
หลายคน troubleshoot แบบ สุ่มเดา — ลอง reboot, ลองเปลี่ยน cable, ลอง ping แบบไม่มีระบบ ทำให้เสียเวลาและอาจไม่เจอ root cause การใช้ systematic approach ช่วยให้ isolate ปัญหาได้เร็ว ลดเวลา MTTR (Mean Time to Resolve) และป้องกันไม่ให้ปัญหาเกิดซ้ำ
Troubleshooting Methodologies
| Method |
วิธีทำ |
เหมาะกับ |
| Top-Down (L7→L1) |
เริ่มจาก Application ลงมา Physical |
Application-specific issues |
| Bottom-Up (L1→L7) |
เริ่มจาก Physical ขึ้นไป Application |
Connectivity issues, new deployments |
| Divide and Conquer |
เริ่มจาก middle layer แล้วแยกขึ้น/ลง |
Experienced engineers, faster isolation |
| Follow the Path |
Trace packet path จาก source → destination |
Intermittent issues, complex topologies |
| Swap/Substitute |
สลับ component ที่สงสัย |
Hardware failures |
Layer 1: Physical
| Check |
Tool |
สิ่งที่หา |
| Cable connected? |
Visual inspection |
Cable unplugged, damaged, wrong port |
| Link light? |
LED indicators |
No link = physical issue |
| Cable test |
Cable tester / TDR |
Open, short, cross-pair, length |
| SFP/Transceiver |
show interface, DOM |
TX/RX power levels, compatibility |
| Interface errors |
show interface counters |
CRC errors, runts, giants = L1 problem |
| Duplex/Speed mismatch |
show interface status |
Half/full duplex mismatch → late collisions |
| Power (PoE) |
show power inline |
PoE budget exceeded, device not powered |
Layer 2: Data Link
| Check |
Tool |
สิ่งที่หา |
| VLAN assignment |
show vlan brief |
Port ใน wrong VLAN หรือ VLAN ไม่มี |
| Trunk status |
show interfaces trunk |
Trunk not formed, VLAN not allowed |
| STP issues |
show spanning-tree |
Port in blocking state, root bridge wrong |
| MAC address table |
show mac address-table |
MAC not learned, MAC flapping |
| ARP table |
show arp / arp -a |
No ARP entry, incorrect MAC mapping |
| Port security |
show port-security |
Port in err-disabled (violation) |
| EtherChannel |
show etherchannel summary |
Members not bundled, mismatched config |
Layer 3: Network
| Check |
Tool |
สิ่งที่หา |
| IP configuration |
ipconfig / ifconfig |
Wrong IP, subnet mask, gateway |
| Ping gateway |
ping default-gateway |
Gateway unreachable = L2/L3 issue |
| Ping destination |
ping target IP |
No route, ACL blocking, firewall |
| Traceroute |
tracert / traceroute |
Where packets stop (hop-by-hop) |
| Routing table |
show ip route |
Missing route, wrong next-hop, recursive |
| ACL check |
show access-lists |
ACL blocking traffic (hit count) |
| NAT |
show ip nat translations |
NAT not translating, pool exhausted |
| DHCP |
show ip dhcp binding |
No IP assigned, scope full, relay issue |
Layer 4: Transport
| Check |
Tool |
สิ่งที่หา |
| Port open? |
telnet IP port / nmap |
Service not listening, firewall blocking port |
| TCP connection |
netstat -an / ss -tuln |
Connection states (ESTABLISHED, TIME_WAIT, SYN_SENT) |
| Packet capture |
Wireshark / tcpdump |
TCP retransmissions, RST, window size issues |
| Firewall rules |
Firewall policy check |
Port/protocol blocked by stateful firewall |
| MTU issues |
ping -f -l 1472 (Windows) |
Fragmentation, PMTUD failure, MTU mismatch |
Layer 7: Application
| Check |
Tool |
สิ่งที่หา |
| DNS resolution |
nslookup / dig |
DNS not resolving, wrong IP returned |
| HTTP response |
curl -v / browser dev tools |
HTTP errors (403, 404, 500, 502) |
| SSL/TLS |
openssl s_client |
Certificate expired, chain incomplete, cipher mismatch |
| Application logs |
Log files |
Application errors, authentication failures |
| Proxy/Load Balancer |
Health check status |
Backend down, health check failing |
Essential Commands
| Command |
Platform |
ใช้ทำอะไร |
| ping |
All |
Basic reachability test (ICMP) |
| traceroute/tracert |
All |
Path tracing (hop-by-hop) |
| nslookup/dig |
All |
DNS resolution test |
| netstat/ss |
All |
Connection states + listening ports |
| tcpdump/Wireshark |
All |
Packet capture + analysis |
| mtr |
Linux |
Combined ping + traceroute (continuous) |
| show tech-support |
Cisco |
Comprehensive device diagnostics |
| show logging |
Network devices |
Syslog messages + errors |
Troubleshooting Process
| Step |
Action |
| 1. Define Problem |
What, when, who affected, scope (one user vs many) |
| 2. Gather Info |
Logs, topology, recent changes, symptoms |
| 3. Analyze |
ใช้ OSI layer approach isolate layer ที่มีปัญหา |
| 4. Hypothesize |
สร้าง hypothesis จาก evidence |
| 5. Test |
ทดสอบ hypothesis (เปลี่ยนทีละ 1 variable) |
| 6. Fix |
Implement fix |
| 7. Verify |
Confirm fix works + no side effects |
| 8. Document |
Record root cause + fix สำหรับ knowledge base |
ทิ้งท้าย: Systematic = Faster Resolution
Network Troubleshooting ใช้ systematic approach (Bottom-Up/Top-Down/Divide-Conquer) L1: cables, lights, errors / L2: VLAN, STP, MAC / L3: IP, route, ACL L4: ports, firewall, MTU / L7: DNS, HTTP, SSL เปลี่ยนทีละ 1 variable + document ทุก fix Define problem → Gather info → Analyze → Test → Fix → Verify → Document
อ่านเพิ่มเติมเกี่ยวกับ Network Monitoring SNMP และ NetFlow sFlow Analysis ที่ siamlancard.com หรือจาก icafeforex.com และ siam2r.com