Network-Interface

發送 ICMP ping 時排除介面

  • November 14, 2018

為了建構小型 linux 應用程序,我需要檢查系統的網際網路連接。但是我的盒子有多個網路介面,用於備份網際網路連接。我需要做一些基於主網路連接失去連接的任務。

我曾經使用 -i 和 ping 命令選擇介面

ping -I eth0 x.x.x.x 

但是使用這種方法,我必須提到我的應用程序上的所有可用介面。除了這樣做之外,還有什麼方法可以做這樣的事情

ping -I !bkp0 x.x.x.x 

基本上我需要檢查除備份連結之外的所有連結的連通性

你只需要一個工作來稱其為“好”嗎?如果您需要檢查除一個以外的所有介面的連接性,並且您知道介面的名稱,則可以編寫腳本:

for i in `ip -br link | cut -d" " -f1`
do
 if [ ${i} != "bkp0" ]
   then
     ping -c 1 -I ${i} so.me.add.ress
 fi
done

引用自:https://unix.stackexchange.com/questions/481597