ips in ns
This commit is contained in:
parent
86cbb31a2f
commit
f491daeb92
21
main.go
21
main.go
|
@ -20,7 +20,6 @@ func main() {
|
|||
addrStyle := lipgloss.NewStyle().Faint(true)
|
||||
infoStyle := lipgloss.NewStyle().Foreground(lipgloss.Color("33"))
|
||||
|
||||
// Save the current namespace
|
||||
origNS, err := netns.Get()
|
||||
if err != nil {
|
||||
fmt.Println("Error getting current namespace:", err)
|
||||
|
@ -28,7 +27,6 @@ func main() {
|
|||
}
|
||||
defer origNS.Close()
|
||||
|
||||
// Get all links in the current namespace
|
||||
links, err := netlink.LinkList()
|
||||
if err != nil {
|
||||
fmt.Println("Error listing links:", err)
|
||||
|
@ -51,7 +49,6 @@ func main() {
|
|||
fmt.Printf(addrStyle.Render(" %d"), attrs.MTU)
|
||||
fmt.Printf(" %s\n", state)
|
||||
|
||||
// IPv4 only
|
||||
addrs, err := netlink.AddrList(link, unix.AF_INET)
|
||||
if err == nil {
|
||||
for _, addr := range addrs {
|
||||
|
@ -91,7 +88,7 @@ func main() {
|
|||
if rl.Type() == "veth" && rl.Attrs().ParentIndex == attrs.Index {
|
||||
fmt.Println(" ", infoStyle.Render("Peer in namespace:"), entry.Name(), "as", rl.Attrs().Name)
|
||||
|
||||
// Get peer IPs inside this namespace
|
||||
// Show IPs on peer
|
||||
peerAddrs, err := netlink.AddrList(rl, unix.AF_INET)
|
||||
if err == nil {
|
||||
for _, pa := range peerAddrs {
|
||||
|
@ -99,6 +96,22 @@ func main() {
|
|||
}
|
||||
}
|
||||
|
||||
fmt.Println(" ", infoStyle.Render("Interfaces in namespace:"), entry.Name())
|
||||
for _, intf := range remoteLinks {
|
||||
intfState := downStyle.Render("DOWN")
|
||||
if intf.Attrs().Flags&net.FlagUp != 0 {
|
||||
intfState = upStyle.Render("UP")
|
||||
}
|
||||
fmt.Printf(" %s %s\n", headerStyle.Render(intf.Attrs().Name), intfState)
|
||||
|
||||
nsAddrs, err := netlink.AddrList(intf, unix.AF_INET)
|
||||
if err == nil {
|
||||
for _, addr := range nsAddrs {
|
||||
fmt.Println(" ", ipStyle.Render(addr.IPNet.String()))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
peerFound = true
|
||||
break
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue