vintage_net v0.2.1 VintageNet.Route.IPRoute
This module knows how to invoke ip
to change the routing table
Link to this section Summary
Functions
Add a default route
Add a local route
Add a source IP address -> routing table rule
Clear all routes on all interfaces
Clear all rules that select the specified table or tables
Link to this section Functions
Link to this function
add_default_route(ifname, route, metric, table_index)
add_default_route(ifname, route, metric, table_index)
add_default_route(
VintageNet.ifname(),
:inet.ip_address(),
VintageNet.Route.Calculator.metric(),
VintageNet.Route.Calculator.table_index()
) :: :ok | {:error, any()}
add_default_route( VintageNet.ifname(), :inet.ip_address(), VintageNet.Route.Calculator.metric(), VintageNet.Route.Calculator.table_index() ) :: :ok | {:error, any()}
Add a default route
Link to this function
add_local_route(ifname, ip, subnet_bits, metric)
add_local_route(ifname, ip, subnet_bits, metric)
add_local_route(
VintageNet.ifname(),
:inet.ip_address(),
VintageNet.Route.Calculator.subnet_bits(),
VintageNet.Route.Calculator.metric()
) :: :ok | {:error, any()}
add_local_route( VintageNet.ifname(), :inet.ip_address(), VintageNet.Route.Calculator.subnet_bits(), VintageNet.Route.Calculator.metric() ) :: :ok | {:error, any()}
Add a local route
Link to this function
add_rule(ip_address, table_index)
add_rule(ip_address, table_index)
add_rule(:inet.ip_address(), VintageNet.Route.Calculator.table_index()) ::
:ok | {:error, any()}
add_rule(:inet.ip_address(), VintageNet.Route.Calculator.table_index()) :: :ok | {:error, any()}
Add a source IP address -> routing table rule
Link to this function
clear_a_local_route(ifname)
clear_a_local_route(ifname)
clear_a_local_route(VintageNet.ifname()) :: :ok | {:error, any()}
clear_a_local_route(VintageNet.ifname()) :: :ok | {:error, any()}
Link to this function
clear_a_local_route(ifname, ip, subnet_bits, metric)
clear_a_local_route(ifname, ip, subnet_bits, metric)
clear_a_local_route(
VintageNet.ifname(),
:inet.ip_address(),
VintageNet.Route.Calculator.subnet_bits(),
VintageNet.Route.Calculator.metric()
) :: :ok | {:error, any()}
clear_a_local_route( VintageNet.ifname(), :inet.ip_address(), VintageNet.Route.Calculator.subnet_bits(), VintageNet.Route.Calculator.metric() ) :: :ok | {:error, any()}
Link to this function
clear_a_route()
clear_a_route()
clear_a_route() :: :ok | {:error, any()}
clear_a_route() :: :ok | {:error, any()}
Link to this function
clear_a_route(ifname, table_index \\ :main)
clear_a_route(ifname, table_index \\ :main)
clear_a_route(VintageNet.ifname(), VintageNet.Route.Calculator.table_index()) ::
:ok | {:error, any()}
clear_a_route(VintageNet.ifname(), VintageNet.Route.Calculator.table_index()) :: :ok | {:error, any()}
Link to this function
clear_a_rule(table_index)
clear_a_rule(table_index)
clear_a_rule(VintageNet.Route.Calculator.table_index()) ::
:ok | {:error, any()}
clear_a_rule(VintageNet.Route.Calculator.table_index()) :: :ok | {:error, any()}
Link to this function
clear_all_routes()
clear_all_routes()
clear_all_routes() :: :ok
clear_all_routes() :: :ok
Clear all routes on all interfaces
Link to this function
clear_all_rules(table_index)
clear_all_rules(table_index)
clear_all_rules(VintageNet.Route.Calculator.table_index() | Enumerable.t()) ::
:ok
clear_all_rules(VintageNet.Route.Calculator.table_index() | Enumerable.t()) :: :ok
Clear all rules that select the specified table or tables