本文整理匯總了Golang中github.com/google/seesaw/ncc/client.NCC.BGPWithdrawAll方法的典型用法代碼示例。如果您正苦於以下問題:Golang NCC.BGPWithdrawAll方法的具體用法?Golang NCC.BGPWithdrawAll怎麽用?Golang NCC.BGPWithdrawAll使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/google/seesaw/ncc/client.NCC
的用法示例。
在下文中一共展示了NCC.BGPWithdrawAll方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: bgpTests
func bgpTests(ncc client.NCC) {
// Display the BGP neighbors.
log.Print("Getting BGP neighbors...")
neighbors, err := ncc.BGPNeighbors()
if err != nil {
log.Fatalf("Failed to get BGP neighbors")
}
for _, n := range neighbors {
log.Printf("- BGP neighbor %v, remote AS %d, state %v, uptime %v seconds",
n.IP, n.ASN, n.BGPState, n.Uptime.Seconds())
}
// Withdraw all existing network advertisements.
log.Printf("Withdrawing all network advertisements")
if err := ncc.BGPWithdrawAll(); err != nil {
log.Fatalf("Failed to withdraw BGP advertisements: %v", err)
}
// Advertise and withdraw the test-anycast VIP.
log.Printf("Advertising and withdrawing VIP %v", testAnycast)
if err := ncc.BGPAdvertiseVIP(testAnycast); err != nil {
log.Fatalf("Failed to advertise VIP %v: %v", testAnycast, err)
}
cfg, err := ncc.BGPConfig()
if err != nil {
log.Fatal("Failed to get BGP configuration")
}
found := false
ns := fmt.Sprintf(" network %v/32", testAnycast)
for _, l := range cfg {
if l == ns {
found = true
break
}
}
if !found {
log.Fatal("Failed to find network statement")
}
if err := ncc.BGPWithdrawVIP(testAnycast); err != nil {
log.Fatalf("Failed to withdraw VIP %v: %v", testAnycast, err)
}
}