首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Linux 多路由環境下默認路由影響業務流量分析

     編輯:程式設計綜合問答

Linux 設備配置多條業務路由(策略路由)時,發現「是否配置默認路由」影響特定業務通訊,但抓包顯示該業務並未走默認路由。本文記錄排查過程與根因。

現象描述

  • 業務 A 有專用路由 I(目標 IP x.x.x.x)
  • 業務 B 有專用路由 II(目標 IP y.y.y.y)
  • 配置默認路由 III 時:業務 A 正常,走路由 I
  • 刪除默認路由 III 時:業務 A 異常,無數據包發出
  • 本地 Demo 模擬業務 A,無默認路由也能連通 x.x.x.x

排查結論

根因在於 DNS 解析階段:

  1. 業務 A 代碼中調用 libc 接口(如 getaddrinfo)解析域名
  2. 解析過程中,系統發起 DNS 查詢報文
  3. 無默認路由時,DNS 服務器 IP 無法路由到,導致解析失敗/超時
  4. 解析失敗導致後續連接根本不發起,抓包自然看不到業務數據包
  5. 有默認路由時,DNS 查詢走默認路由成功,業務流量再走策略路由

驗證方法

  • 用 dig @DNS_IP domain 指定 DNS 服務器測試解析
  • 在 /etc/resolv.conf 確認 DNS 服務器可達性
  • 業務代碼中改用 IP 直連而非域名,可繞過 DNS 依賴

教訓

「業務流量走策略路由」不代表「所有相關流量都走策略路由」。DNS、NTP、管理平面流量往往仍依賴默認路由,缺一不可。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved