OSI 7 Layers · Packet Walkthrough
揀一個情境,睇封包由你部 PC 出發,經 Switch、家用 Router、ISP 去到 Server:每一層加咗咩 header、每一跳改咗咩欄位,出錯時又卡喺邊一層。其餘分頁逐個協定睇:路由(OSPF、RIP、EIGRP、IS-IS、BGP、Static)、L2 交換(STP、VLAN、LACP)同網絡服務(DHCP、NAT、HSRP)。
| 層 | PDU | 關鍵地址 / 欄位 | 設備 / 協定 | 常見故障 | 排查工具 |
|---|---|---|---|---|---|
| L7 應用層 | Data | URL、Host、status code | HTTP、DNS、SMTP、SSH | 404 / 5xx、NXDOMAIN | curl -v, dig, nslookup, DevTools |
| L6 表示層 | Data | 加密、編碼、壓縮 | TLS、UTF-8、JPEG | 證書過期 / 域名唔啱、亂碼 | openssl s_client |
| L5 會話層 | Data | Session ID、對話狀態 | TLS session、RPC、SMB | Session timeout、登入狀態唔見 | app log |
| L4 傳輸層 | Segment / Datagram | Port、Seq/Ack、Flags | TCP、UDP、防火牆 (L4 rule) | Refused、Timeout、重傳 | ss -tlnp, nc -zv, netstat |
| L3 網絡層 | Packet | IP、TTL、路由 | Router、L3 switch、ICMP、NAT | 路由錯、Loop、Unreachable | ping, traceroute, ip route |
| L2 數據鏈路層 | Frame | MAC、VLAN tag、FCS | Switch、AP、ARP、STP | ARP 失敗、VLAN 錯、L2 loop | arp -a, ip neigh, show mac address-table |
| L1 實體層 | Bits | 電壓、光、無線電 | 網線、光纖、NIC、Hub | 冇 Link、CRC error、Duplex | 指示燈, ethtool, cable tester |
ip linkarp -aping 192.168.1.1 → ping 8.8.8.8nslookup example.comnc -zv host 443openssl s_clientcurl -v 睇 status| RIP v2 | OSPF | EIGRP | |
|---|---|---|---|
| 類型 | Distance vector | Link state | Advanced distance vector |
| Metric | Hop count(最多 15,16 = 去唔到) | Cost = 參考頻寬 ÷ 介面頻寬 | 最細頻寬 + 總延遲(K1、K3) |
| Administrative Distance | 120 | 110 | 90(內部)/ 170(外部) |
| 演算法 | Bellman-Ford | Dijkstra SPF | DUAL |
| 更新方式 | 每 30 秒送成張表 | 有變先 flood LSA(30 分鐘 refresh) | 有變先送 partial update |
| 封包 | UDP 520 → 224.0.0.9 | IP proto 89 → 224.0.0.5 / .6 | IP proto 88 → 224.0.0.10 |
| Timer | Update 30 / Invalid 180 / Flush 240 | Hello 10 / Dead 40 | Hello 5 / Hold 15 |
| 收斂速度 | 慢(分鐘級) | 快(秒級) | 好快(有 FS 時毫秒級) |
| 常見故障 | 版本唔夾、count to infinity、15 hop 上限 | Area / Hello / MTU / 認證唔夾 | AS / K-value 唔夾、Stuck in Active |
| 排查指令 | show ip rip database debug ip rip | show ip ospf neighbor show ip ospf interface | show ip eigrp neighbors show ip eigrp topology |
| IS-IS | BGP | Static | |
|---|---|---|---|
| 類型 | Link state(OSI 協定,直接行 L2) | Path vector(行 TCP 179) | 人手設定 |
| Metric / 揀路 | 每條 link metric(預設全部 10) | Weight → Local Pref → AS path → Origin → MED … | — |
| Administrative Distance | 115 | 20(eBGP)/ 200(iBGP) | 1(floating 自訂,例如 250) |
| 鄰居 | IIH Hello,L1 / L2 adjacency | 人手指定 neighbor + remote-as | 冇 |
| 常見用途 | ISP、大型骨幹網 | ISP 之間、多 ISP 接入、Data center | 細網絡、default route、stub |
| 常見故障 | Level / Area 唔夾、MTU(IIH padding) | remote-as 錯、TCP 179 被擋、Hold timer 慢 | 漏回程 route、floating static 只救一邊 |
| 排查指令 | show isis neighbors show clns interface | show ip bgp summary show ip bgp | show ip route static traceroute(雙向) |
| STP / RSTP | VLAN 802.1Q | LACP | |
|---|---|---|---|
| 用途 | 防止 L2 loop | 將一部 switch 分成多個 broadcast domain | 將多條 link 綁成一條 |
| 運作 | BPDU 選 root bridge,阻塞多餘 port | Trunk 喺 frame 加 4 bytes tag(VID 1–4094) | LACPDU 協商,按 hash 分流 |
| Timer | 802.1D:30–50 秒收斂;RSTP:1 秒內 | — | LACPDU 每 1 秒(fast)/ 30 秒(slow) |
| 常見故障 | 關咗 STP → broadcast storm;root 揀錯 | Allowed list 漏 VLAN;native VLAN 唔夾 | 一邊 on 一邊 LACP;速度 / 設定唔一致 |
| 排查指令 | show spanning-tree | show vlan brief show interfaces trunk | show etherchannel summary |
| DHCP | NAT / PAT | HSRP | |
|---|---|---|---|
| 用途 | 自動派 IP、mask、gateway、DNS | 私有 IP 共用公共 IP 上網 | 兩部 router 共用一個 gateway IP |
| 封包 | UDP 67 / 68 · DORA | 改 IP header(PAT 連 port) | UDP 1985 → 224.0.0.2 |
| 重點 | Lease;50% 時 renew;跨網段要 ip helper-address | Inside local / global;translation timeout | Priority、preempt;Hello 3 / Hold 10 秒 |
| 常見故障 | Pool 用晒 → 169.254.x.x;relay / snooping 擋咗 | 介面冇 ip nat inside / outside;ACL 唔 match | Group / VIP 唔夾 → dual active;冇 preempt |
| 同類協定 | DHCPv6、SLAAC | NAT64、port forwarding | VRRP(開放標準)、GLBP(負載分擔) |
| 排查指令 | show ip dhcp binding ipconfig /all | show ip nat translations show ip nat statistics | show standby brief |
每題由一張用戶工單開始,跟住喺 Packet Tracer 風格嘅 CLI 逐個打 command:先 show 查證,再改設定,最後 ping / show 驗證。根本原因做到修正嗰步先揭曉。