萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 網路應用技術 >> 應用程式教學

Linux 網路配置特殊機制:TOS 欄位處理、IP 偽裝分片重組與 MAC 位址修改

Linux 核心網路處理的獨特行為

Linux 核心對 IP 封包的 TOS (Type of Service,服務類型) 欄位給予特殊關注,這與其他作業系統(特別是舊版 Windows)行為不同,可能導致混合環境效能問題。

TOS 型別服務優先權機制

運作原理

  • Linux 核心會檢查 IP 封包標頭的 TOS 欄位。
  • 標記為「互動式/低延遲」的封包獲得優先處理、更快服務。
  • 這符合 RFC 1349/2474 服務品質設計初衷。

Windows 相容性問題

  • 舊版 Windows(9x/NT/2000/XP 早期)將所有發出封包的 TOS 皆標記為「互動式/低延遲」,不論實際應用類型。
  • Unix/Linux 應用程式通常不主動設定 TOS。
  • 結果:Linux 閘道器將 Windows 流量視為高優先級,Unix/Linux 正常流量被擠佔,嚴重影響 Unix 服務效能。

解決方案:編譯核心時停用 TOS 路由鍵值

# 核心配置選項
CONFIG_IP_ROUTE_TOS=n
# 或在 make menuconfig 中取消勾選
Networking options → IP: use TOS value as routing key

現代 Linux 發行版預設通常已調整此行為,或透過 tc/iptables 進行更精細的 QoS 控制。

IP 偽裝(NAT)與分片重組

機制

  • 啟用 IP Masquerade (NAT) 時,核心在轉發封包前,會先將分片重組為完整封包。
  • 即使隨後必須立即重新分片以適應出介面 MTU,仍會先重組。

效能影響

  • 重組消耗 CPU 週期。
  • 現代 CPU 效能足夠,通常非瓶頸。
  • 高流量場景可考慮調整 /proc/sys/net/ipv4/ipfrag_* 參數或使用硬體加速網卡。

網路介面 MAC 位址修改功能

Linux 允許修改特定類型網路介面的 MAC 位址(硬體位址):

# 暫時修改(重開機失效)
ip link set dev eth0 address 00:11:22:33:44:55

# 永久修改(視發行版而定)
# /etc/network/interfaces (Debian/Ubuntu)
iface eth0 inet dhcp
    hwaddress ether 00:11:22:33:44:55

# /etc/sysconfig/network-scripts/ifcfg-eth0 (RHEL/CentOS)
HWADDR=00:11:22:33:44:55

風險警示

  • 破壞性風險:MAC 衝突會導致網路通訊失敗、交換機 MAC 表震盪、安全系統誤判。
  • 合法用途:軟體授權綁定 MAC、高可用性叢集虛擬 MAC、測試環境模擬。
  • 原則:僅在萬不得已、充分理解後果時使用,並做好變更管理記錄。

現代 Linux 網路工具鏈

建議使用 ip (iproute2) 取代已棄用的 ifconfig/route:

ip addr show          # 顯示介面與 IP
ip link set dev eth0 up/down
ip route show         # 顯示路由表
ss -tuln              # 取代 netstat,顯示監聽埠
copyright © 萬盛學電腦網 all rights reserved