def run(self, line): if (common.get_console().prompt == common.get_user_name()): print("Reloading Bridge") common.reset() vswitch.ovs_vsctl_del_bridge("br0") vswitch.ovs_vsctl_add_bridge("br0") for i in range(0, common.get_len_interfaces()): vswitch.ovs_vsctl_add_port_to_bridge( "br0", common.get_item_interfaces(i)) else: print(Colors.FAIL + "[ERROR] " + Colors.ENDC + "Bad Command use")
def cleanup(self): """ Delete all remaining bridges and ports if ovs-test client did not had a chance to remove them. It is necessary to call this function if ovs-test server is abruptly terminated when doing the tests. """ for port in self.ports: # Remove ports that were added to existing bridges vswitch.ovs_vsctl_del_port_from_bridge(port) for bridge in self.bridges: # Remove bridges that were added for L3 tests vswitch.ovs_vsctl_del_bridge(bridge) for pbridge in self.pbridges: # Remove bridges that were added for VLAN tests vswitch.ovs_vsctl_del_pbridge(pbridge[0], pbridge[1])
def xmlrpc_del_bridge(self, brname): """ Deletes an OVS bridge. """ ret = vswitch.ovs_vsctl_del_bridge(brname) if ret == 0: self.bridges.discard(brname) return ret
def xmlrpc_create_test_bridge(self, bridge, iface): """ This function creates a physical bridge from iface. It moves the IP configuration from the physical interface to the bridge. """ ret = vswitch.ovs_vsctl_add_bridge(bridge) if ret == 0: self.pbridges.add((bridge, iface)) util.interface_up(bridge) (ip_addr, mask) = util.interface_get_ip(iface) util.interface_assign_ip(bridge, ip_addr, mask) util.move_routes(iface, bridge) util.interface_assign_ip(iface, "0.0.0.0", "255.255.255.255") ret = vswitch.ovs_vsctl_add_port_to_bridge(bridge, iface) if ret == 0: self.ports.add(iface) else: util.interface_assign_ip(iface, ip_addr, mask) util.move_routes(bridge, iface) vswitch.ovs_vsctl_del_bridge(bridge) return ret
import vswitch #borramos configuracion anterior vswitch.ovs_vsctl_del_bridge("br0") #creamos el bridge br0 vswitch.ovs_vsctl_add_bridge("br0") #anadimos interfaces administrativas vswitch.ovs_vsctl_admin_port("br0", "vlan10", "10") vswitch.ovs_vsctl_set_admin("vlan10", "internal") vswitch.ovs_vsctl_admin_port("br0", "vlan20", "20") vswitch.ovs_vsctl_set_admin("vlan20", "internal") vswitch.ifconfig("192.168.0.10/24", "vlan10") vswitch.ifconfig("192.168.1.10/24", "vlan20") #anadimos las interfaces al bridge vswitch.ovs_vsctl_add_port_to_bridge("br0", "eth2") vswitch.ovs_vsctl_add_port_to_bridge("br0", "eth3") vswitch.ovs_vsctl_add_port_to_bridge("br0", "eth4") vswitch.ovs_vsctl_add_port_to_bridge("br0", "eth5") #metemos los vpcs a vlan 10 y 20 vswitch.ovs_vsctl_set("Port", "eth2", "tag", None, "10") vswitch.ovs_vsctl_set("Port", "eth3", "tag", None, "10") vswitch.ovs_vsctl_set("Port", "eth4", "tag", None, "20") vswitch.ovs_vsctl_add_trunk_port("eth5", "trunks=10,20") #vswitch.ovs_vsctl_set("Port","eth5","tag",None,"20")
def cleanup(self): ovs_vsctl_del_bridge(self.name)