Routing and handling of network interfaces.

class scapy.route.Route[source]

Bases: object

add(*args: Any, **kargs: Any) None[source]

Add a route to Scapy’s IPv4 routing table. add(host|net, gw|dev)

  • host – single IP to consider (/32)

  • net – range to consider

  • gw – gateway

  • dev – force the interface to use

  • metric – route metric


  • ip route add via
    >>> conf.route.add(net="", gw="")
  • ip route add dev eth0::
    >>> conf.route.add(net="", dev="eth0")
  • ip route add via metric 1::
    >>> conf.route.add(net="", gw="", metric=1)
delt(*args: Any, **kargs: Any) None[source]

Remove a route from Scapy’s IPv4 routing table. delt(host|net, gw|dev)

Same syntax as add()

get_if_bcast(iff: str) List[str][source]
ifadd(iff: str, addr: str) None[source]
ifchange(iff: str, addr: str) None[source]
ifdel(iff: str) None[source]
invalidate_cache() None[source]
make_route(host: str | None = None, net: str | None = None, gw: str | None = None, dev: str | None = None, metric: int = 1) Tuple[int, int, str, str, str, int][source]
resync() None[source]
route(dst: str | None = None, verbose: int = 2, _internal: bool = False) Tuple[str, str, str][source]

Returns the IPv4 routes to a host.


dst – the IPv4 of the destination host


tuple (iface, output_ip, gateway_ip) where - iface: the interface used to connect to the host - output_ip: the outgoing IP that will be used - gateway_ip: the gateway IP that will be used