Example #1
0
def _set_default_route(gateway, family, dev=None):
    try:
        ipwrapper.routeAdd(['default', 'via', gateway], family=family, dev=dev)
    except ipwrapper.IPRoute2Error:  # there already is a default route
        logging.warning(
            'Existing default route will be removed so a new one can be set.')
        ipwrapper.routeDel('default', family=family)
        ipwrapper.routeAdd(['default', 'via', gateway], family=family, dev=dev)
Example #2
0
def _set_default_route(gateway, family, dev=None):
    try:
        ipwrapper.routeAdd(['default', 'via', gateway], family=family, dev=dev)
    except ipwrapper.IPRoute2Error:  # there already is a default route
        logging.warning(
            'Existing default route will be removed so a new one can be set.')
        ipwrapper.routeDel('default', family=family)
        ipwrapper.routeAdd(['default', 'via', gateway], family=family, dev=dev)
Example #3
0
    def removeSourceRoute(routes, rules, device):
        for route in routes:
            try:
                routeDel(route)
            except IPRoute2Error as e:
                if 'No such process' in e.message[0]:
                    # The kernel or dhclient has won the race and removed the
                    # route already. We have yet to remove routing rules.
                    pass
                else:
                    raise

        for rule in rules:
            ruleDel(rule)
Example #4
0
 def delete(route_data):
     r = route_data
     with _translate_iproute2_exception(IPRouteDeleteError, route_data):
         routeDel(Route(r.to, r.via, r.src, r.device, r.table), r.family)
Example #5
0
 def delete(route_data):
     r = route_data
     with _translate_iproute2_exception(IPRouteDeleteError, route_data):
         routeDel(Route(r.to, r.via, r.src, r.device, r.table), r.family)