0
嘗試從網絡名稱空間內打印路由列表。 netlink.RouteList
函數需要Interface
類型。所有接口的列表由LinkList()
收集。從Go列表中打印列表。循環故障
我試圖給每個接口調用RouteList並打印它的輸出。 RouteList返回類型Route
,我試圖打印int
LinkIndex。
它看起來好像我的循環
for j := range rt {
log.Printf("Route: %d : %d",rt[j].LinkIndex)
}
是不是出於某種原因執行,運行在那裏的產量沒有另一個printf的測試。
爲什麼不會調用這個循環?
func (h *NSHandle) showInts() {
nh := (*netlink.Handle)(h) //cast required
int, err := nh.LinkList()
if err != nil {
log.Fatal(err)
}
log.Printf("Namespace Ints:")
for i, r := range int {
log.Printf("%d: %s", i, r.Attrs().Name)
rt, err := netlink.RouteList(r,-1)
if err != nil {
log.Fatal(err)
}
for j := range rt {
log.Printf("Route: %d : %d",rt[j].LinkIndex)
}
}
}