Ospf¶
Module for working with OSPF configuration in EOS
This module provides an API for creating/modifying/deleting OSPF configurations
- class pyeapi.api.ospf.Ospf(*args, **kwargs)[source]¶
Bases:
pyeapi.api.abstract.Entity
The Ospf class implements global Ospf router configuration
- add_network(network, netmask, area=0)[source]¶
Adds a network to be advertised by OSPF
- Parameters
network (str) – The network to be advertised in dotted decimal notation
netmask (str) – The netmask to configure
area (str) – The area the network belongs to. By default this value is 0
- Returns
True if the command completes successfully
- Return type
bool
- Exception:
- ValueError: This will get raised if network or netmask
are not passed to the method
- add_redistribution(protocol, route_map_name=None)[source]¶
Adds a protocol redistribution to OSPF
- Parameters
protocol (str) – protocol to redistribute
route_map_name (str) – route-map to be used to filter the protocols
- Returns
True if the command completes successfully
- Return type
bool
- Exception:
- ValueError: This will be raised if the protocol pass is not one
of the following: [rip, bgp, static, connected]
- configure_ospf(cmd)[source]¶
Allows for a list of OSPF subcommands to be configured”
- Parameters
cmd – (list or str): Subcommand to be entered
- Returns
True if all the commands completed successfully
- Return type
bool
- create(ospf_process_id, vrf=None)[source]¶
Creates a OSPF process in the specified VRF or the default VRF.
- Parameters
ospf_process_id (str) – The OSPF process Id value
vrf (str) – The VRF to apply this OSPF process to
- Returns
True if the command completed successfully
- Return type
bool
- Exception:
- ValueError: If the ospf_process_id passed in less
than 0 or greater than 65536
- delete()[source]¶
Removes the entire ospf process from the running configuration
- Parameters
None –
- Returns
True if the command completed succssfully
- Return type
bool
- get(vrf=None)[source]¶
Returns the OSPF routing configuration
- Parameters
vrf (str) – VRF name to return OSPF routing config for
- Returns
- keys: router_id (int): OSPF router-id
vrf (str): VRF of the OSPF process networks (dict): All networks that
are advertised in OSPF
ospf_process_id (int): OSPF proc id redistribution (dict): All protocols that
are configured to be redistributed in OSPF
- shutdown (bool): Gives the current shutdown
off the process
- Return type
dict
- remove_network(network, netmask, area=0)[source]¶
Removes a network advertisment by OSPF
- Parameters
network (str) – The network to be removed in dotted decimal notation
netmask (str) – The netmask to configure
area (str) – The area the network belongs to. By default this value is 0
- Returns
True if the command completes successfully
- Return type
bool
- Exception:
- ValueError: This will get raised if network or netmask
are not passed to the method
- remove_redistribution(protocol)[source]¶
Removes a protocol redistribution to OSPF
- Parameters
protocol (str) – protocol to redistribute
route_map_name (str) – route-map to be used to filter the protocols
- Returns
True if the command completes successfully
- Return type
bool
- Exception:
- ValueError: This will be raised if the protocol pass is not one
of the following: [rip, bgp, static, connected]
- set_no_shutdown()[source]¶
Removes the shutdown property from the OSPF process
- Parameters
None –
- Returns
True if the commands are completed successfully
- Return type
bool
- set_router_id(value=None, default=False, disable=False)[source]¶
Controls the router id property for the OSPF Proccess
- Parameters
value (str) – The router-id value
default (bool) – Controls the use of the default keyword
disable (bool) – Controls the use of the no keyword
- Returns
True if the commands are completed successfully
- Return type
bool