Bash

route -n 給出輸出“路由:fscanf”

  • June 28, 2015

如果我啟動我的系統並且沒有介面有 IP 地址,我會得到上述輸出。但是,如果我給一個介面一個 IP,即使我再次刪除它,它也會消失。為什麼會這樣?

是否有一些文件創建了該路線試圖讀取?

route讀取/proc/net/routeroute: fscanf出現在stderr.

從配置的介面流式傳輸資訊:

# cat /proc/net/route
Iface   Destination Gateway     Flags   RefCnt  Use Metric  Mask        MTU Window  IRTT                                                       
eth0    00000000    02F7A8C0    0003    0   0   202 00000000    0   0   0                                                                             
eth0    00F7A8C0    00000000    0001    0   0   0   00FFFFFF    0   0   0  

fscanf c++ 函式顯示為錯誤route因為/proc/net/route為空。

如果您取消配置介面並再次將其關閉,則會有一些初始資訊但沒有流資訊:

# cat /proc/net/route
Iface   Destination Gateway     Flags   RefCnt  Use Metric  Mask        MTU Window  IRTT 

在腳本中測試此錯誤以檢查是否應配置介面。

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