2019-07-24 ICMP Redirect 排錯案例

今天碰到一個ICMP Redirect引起的故障案例,很有意思,覺得有必要記錄一下。
先看一下拓撲圖,左邊的是現有網絡,與右邊的ICMP Redirect原理圖對比。
Host A想訪問Host B,C,D,


ICMP重定向的原理是,當路由器發現主機對某個目的ip有更好的路由策略,就使用ICMP redirect通知主機,以提高帶寬利用率,達到節省資源的目的。
在本案例中,主機A訪問主機B,C,D的時候,會到達與OLT直連的路由器。由於主機B,C,D通過OLT二層互聯到路由器,對於路由器來說,OLT的作用就類似一臺交換機。
從主機A來的數據包到路由器之後,首先到達路由器上B,C,D主機的網關,然後通過網關到達主機B,C,D。由於ICMP redirect的存在,路由器發現針對主機B,C,D 有更優的路徑,可以不通過網關,這時候就發送ICMP重定向報文修改下一條地址,發送的arp包修改相應的mac地址。
這時候問題就來了,由於olt安全特性,二層其實是不通的,olt會把相關的數據包丟棄,導致訪問失敗。
解決方法很簡單,在網關所在端口上取消icmp重定向,華爲路由器上命令是undo icmp redirect send。
詳細原理可參考思科網站:https://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/nx-os-software/213841-understanding-icmp-redirect-messages.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章