faucet.faucet_dot1x module¶
802.1x implementation for FAUCET.
-
class
faucet.faucet_dot1x.
FaucetDot1x
(logger, metrics, send_flow_msgs)[source]¶ Bases:
object
Wrapper for experimental Chewie 802.1x authenticator.
-
create_flow_pair
(dot1x_port, nfv_sw_port, valve)[source]¶ Creates the pair of flows that redirects the eapol packets to/from the supplicant and nfv port
Parameters: Returns: list
-
static
get_dot1x_port_match_priority
(dot1x_port, port_acl_table, valve)[source]¶ Create the match for eapol coming from the supplicant’s port. :param dot1x_port: supplicant port. :type dot1x_port: Port :param port_acl_table: :type port_acl_table: ValveTable :param valve: :type valve: Valve
Returns: dict containing a match and priority.
-
static
get_nfv_sw_port_match_priority
(mac, nfv_sw_port, port_acl_table, valve)[source]¶ Create the match for eapol coming from the nfv_sw_port. :param mac: the MacAddress of the dot1x (supplicant port) :type mac: str :param nfv_sw_port: :type nfv_sw_port: int :param port_acl_table: :type port_acl_table: ValveTable :param valve: :type valve: Valve
Returns: dict containing a match and priority.
-
get_valve_and_port
(port_id)[source]¶ Finds the valve and port that this address corresponds to :param port_id: is a macaddress string
-
port_down
(valve, dot1x_port)[source]¶ Remove the acls added by FaucetDot1x.get_port_acls :param valve: :param dot1x_port:
Returns: list of flowmods
-