コード例 #1
0
    def setUpClassDevices(cls):
        BridgeTools.delete_ns_all()

        BridgeTools.create_veth_pair(cls.gtp_veth, cls.gtp_veth_ns)
        BridgeTools.ifup_netdev(cls.gtp_veth, cls.gtp_pkt_dst + "/24")

        BridgeTools.create_veth_pair(cls.sgi_veth, cls.sgi_veth1)

        BridgeTools.create_ns_and_move_veth(cls.NS_NAME, cls.gtp_veth_ns,
                                            cls.gtp_pkt_src + "/24")

        BridgeTools.ifup_netdev(cls.sgi_veth, cls.sgi_veth_ip + "/24")
        BridgeTools.ifup_netdev(cls.sgi_veth1)

        cls.ebpf_man = ebpf_manager(cls.sgi_veth, cls.gtp_veth,
                                    cls.sgi_veth_ip, True, UL_HANDLER)
        cls.ebpf_man.detach_ul_ebpf()
        cls.ebpf_man.attach_ul_ebpf()
        time.sleep(2)
        cls.sniffer = AsyncSniffer(
            iface=cls.sgi_veth1,
            store=False,
            prn=cls.pkt_cap_fun,
        )
        cls.sniffer.start()
コード例 #2
0
    def setUpClassDevices(cls):
        BridgeTools.delete_ns_all()

        BridgeTools.create_veth_pair(cls.gtp_veth, cls.gtp_veth_ns)
        BridgeTools.ifup_netdev(cls.gtp_veth, cls.gtp_pkt_dst + "/24")

        BridgeTools.create_veth_pair(cls.sgi_veth, cls.sgi_veth1)

        BridgeTools.create_ns_and_move_veth(cls.NS_NAME, cls.sgi_veth1, cls.inner_src_ip + "/24")

        BridgeTools.ifup_netdev(cls.sgi_veth, cls.inner_dst_ip + "/24")
        BridgeTools.ifup_netdev(cls.gtp_veth_ns, cls.gtp_pkt_src + "/24")

        gw_ip = IPAddress(version=IPAddress.IPV4, address=socket.inet_aton(cls.sgi_veth_ip))

        cls.ebpf_man = EbpfManager(cls.sgi_veth, cls.gtp_veth, gw_ip, bpf_ul_file=UL_HANDLER, bpf_dl_file=DL_HANDLER, bpf_header_path=BPF_HEADER_PATH)
        cls.ebpf_man.detach_dl_ebpf()
        cls.ebpf_man.attach_dl_ebpf()

        cls.sniffer = AsyncSniffer(
            iface='gtpu_sys_2152',
            store=False,
            prn=cls.pkt_cap_fun,
        )
        cls.sniffer.start()
コード例 #3
0
ファイル: test_ebpf_dl_dp.py プロジェクト: ganeshg87/magma
    def setUpClassDevices(cls):
        BridgeTools.delete_ns_all()

        BridgeTools.create_veth_pair(cls.gtp_veth, cls.gtp_veth_ns)
        BridgeTools.ifup_netdev(cls.gtp_veth, cls.gtp_pkt_dst + "/24")

        BridgeTools.create_veth_pair(cls.sgi_veth, cls.sgi_veth1)

        BridgeTools.create_ns_and_move_veth(cls.NS_NAME, cls.sgi_veth1, cls.inner_src_ip + "/24")

        BridgeTools.ifup_netdev(cls.sgi_veth, cls.inner_dst_ip + "/24")
        BridgeTools.ifup_netdev(cls.gtp_veth_ns, cls.gtp_pkt_src + "/24")

        cls.ebpf_man = ebpf_manager(cls.sgi_veth, cls.gtp_veth, cls.sgi_veth_ip, enabled=True, bpf_ul_file=UL_HANDLER, bpf_dl_file=DL_HANDLER)
        cls.ebpf_man.detach_dl_ebpf()
        cls.ebpf_man.attach_dl_ebpf()

        cls.sniffer = AsyncSniffer(
            iface='gtpu_sys_2152',
            store=False,
            prn=cls.pkt_cap_fun,
        )
        cls.sniffer.start()