def new (): links = {} for ifi in Link.getLinks(): links[ifi.index] = ifi.attributes.get(Link.Type.Attribute.IFLA_IFNAME).strip('\0') for route in Network.newRoute(): print(route)
def routes (): links = {} for ifi in Link.getLinks(): links[ifi.index] = ifi.attributes.get(Link.Type.Attribute.IFLA_IFNAME).strip('\0') print('Kernel IP routing table') print('%-18s %-18s %-18s %-7s %s' % ('Destination','Genmask','Gateway','Metric','Iface')) for route in Network.getRoutes(): if route.family != socket.AF_INET: continue if route.type not in (Network.Type.Type.RTN_LOCAL,Network.Type.Type.RTN_UNICAST): continue if route.src_len == 32: continue destination = route.attributes.get(Network.Type.Attribute.RTA_DST) gateway = route.attributes.get(Network.Type.Attribute.RTA_GATEWAY) oif = ord(route.attributes.get(Network.Type.Attribute.RTA_OIF)[0]) metric = ord(route.attributes.get(Network.Type.Attribute.RTA_PRIORITY,'\0')[0]) dst = '%s' % socket.inet_ntop(route.family, destination) if destination else '' gw = '%s' % socket.inet_ntop(route.family, gateway) if gateway else '0.0.0.0' mask = NetMask.CIDR[route.src_len] iface = links[oif] print('%-18s %-18s %-18s %-7d %-s' % (dst or '0.0.0.0',mask,gw,metric,iface))
def route (): links = {} for ifi in Link.getLinks(): links[ifi.index] = ifi.attributes.get(Link.Type.Attribute.IFLA_IFNAME).strip('\0') print 'Kernel IP routing table' print '%-18s %-18s %-18s %-7s %s' % ('Destination','Genmask','Gateway','Metric','Iface') for route in Network.getRoutes(): if route.family != socket.AF_INET: continue if route.type not in (Network.Type.Type.RTN_LOCAL,Network.Type.Type.RTN_UNICAST): continue if route.src_len == 32: continue destination = route.attributes.get(Network.Type.Attribute.RTA_DST) gateway = route.attributes.get(Network.Type.Attribute.RTA_GATEWAY) oif = ord(route.attributes.get(Network.Type.Attribute.RTA_OIF)[0]) metric = ord(route.attributes.get(Network.Type.Attribute.RTA_PRIORITY,'\0')[0]) dst = '%s' % socket.inet_ntop(route.family, destination) if destination else '' gw = '%s' % socket.inet_ntop(route.family, gateway) if gateway else '0.0.0.0' mask = NetMask.CIDR[route.src_len] iface = links[oif] print '%-18s %-18s %-18s %-7d %-s' % (dst or '0.0.0.0',mask,gw,metric,iface)
def new(): links = {} for ifi in Link.getLinks(): links[ifi.index] = ifi.attributes.get( Link.Type.Attribute.IFLA_IFNAME).strip('\0') for route in Network.newRoute(): print(route)
def new (): netlink = NetLinkMessage() links = {} for ifi in Link(netlink).getLinks(): links[ifi.index] = ifi.attributes.get(Link.Type.Attribute.IFLA_IFNAME).strip('\0') for route in Network(netlink).newRoute(): print route