faucet.faucet_dot1x module
802.1x implementation for FAUCET.
- class faucet.faucet_dot1x.FaucetDot1x(logger, exc_logname, metrics, send_flow_msgs)[source]
Bases:
object
Wrapper for experimental Chewie 802.1x authenticator.
- auth_handler(address, port_id, *args, **kwargs)[source]
Callback for when a successful auth happens.
- create_flow_pair(dp_id, dot1x_port, nfv_sw_port, valve)[source]
Creates the pair of flows that redirects the eapol packets to/from the supplicant and nfv port
- create_mab_flow(dp_id, dot1x_port, nfv_sw_port, valve)[source]
Creates a flow that mirrors UDP packets from port 68 (DHCP) from the supplicant to the nfv port
- exc_logname = None
- nfv_sw_port_up(dp_id, dot1x_ports, nfv_sw_port)[source]
Setup the dot1x forward port acls when the nfv_sw_port comes up. :param dp_id: :type dp_id: int :param dot1x_ports: :type dot1x_ports: Iterable of Port objects :param nfv_sw_port: :type nfv_sw_port: Port
- Returns:
list of flowmods
- port_down(dp_id, dot1x_port, nfv_sw_port)[source]
Remove the acls added by FaucetDot1x.get_port_acls :param dp_id: :type dp_id: int :param dot1x_port: :type dot1x_port: Port :param nfv_sw_port: :type nfv_sw_port: Port
- Returns:
list of flowmods