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)
}
}
}