def test_it_should_not_get_received_packets_for_another_ip(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:db8::1"), IPAddress.identify("fe80::1")]) l.accept(IPv6(src="2001:db8::2", dst="2001:db8::3")/ICMPv6EchoRequest()) l.accept(IPv6(src="2001:db8::3", dst="2001:db8::2")/ICMPv6EchoReply()) self.assertEqual(0, len(n.received()))
def test_it_should_receive_traffic_from_if0(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:500:88:200::10"), IPAddress.identify("2001:500:88:200::11"), IPAddress.identify("fe80:500:88:200::10"), IPAddress.identify("192.0.43.10")]) l.accept(IPv6(src="2001:500:88:200::90", dst="2001:500:88:200::10")) self.assertEqual(1, len(n.received())) self.assertTrue(n.received()[0].haslayer(IPv6))
def test_it_should_send_traffic_on_if0(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:500:88:200::10"), IPAddress.identify("2001:500:88:200::11"), IPAddress.identify("fe80:500:88:200::10"), IPAddress.identify("192.0.43.10")]) n.send("This is a packet.") self.assertEqual(1, len(l.forwarded())) self.assertEqual("This is a packet.", l.forwarded()[0])
def test_it_should_have_ip_addresses_on_if0(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:500:88:200::10"), IPAddress.identify("2001:500:88:200::11"), IPAddress.identify("fe80:500:88:200::10"), IPAddress.identify("192.0.43.10")]) self.assertEqual("2001:500:88:200::10", n.ip().short_form()) self.assertEqual("2001:500:88:200::10", n.global_ip().short_form()) self.assertEqual("2001:500:88:200::11", n.global_ip(offset=1).short_form()) self.assertEqual("192.0.43.10", n.ip(type='v4').short_form())
def test_it_should_get_received_packets_for_its_own_v4_address(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:db8::1"), IPAddress.identify("fe80::1"), IPAddress.identify("10.0.0.1")]) l.accept(IP(src="10.0.0.2", dst="10.0.0.1")/ICMP()) l.accept(IP(src="10.0.0.1", dst="10.0.0.2")/ICMP()) self.assertEqual(1, len(n.received())) self.assertTrue(n.received()[0].haslayer(ICMP))
def test_it_should_get_received_packets_for_its_own_link_local(self): l = Link('A') n = TestNode('TNN', link0=l, ips0=[IPAddress.identify("2001:db8::1"), IPAddress.identify("fe80::1")]) l.accept(IPv6(src="fe80::2", dst="fe80::1")/ICMPv6EchoRequest()) l.accept(IPv6(src="fe80::1", dst="fe80::2")/ICMPv6EchoReply()) self.assertEqual(1, len(n.received())) self.assertTrue(n.received()[0].haslayer(ICMPv6EchoRequest))