@Override protected Packet getWholePacket() { Inet6Address srcAddr; Inet6Address dstAddr; try { srcAddr = (Inet6Address) InetAddress.getByName("2001:db8::3:2:1"); dstAddr = (Inet6Address) InetAddress.getByName("2001:db8::3:2:2"); } catch (UnknownHostException e) { throw new AssertionError(); } IpV6Packet.Builder IpV6b = new IpV6Packet.Builder(); IpV6b.version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.SCTP) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder(packet.getBuilder()) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(IpV6b) .paddingAtBuild(true); return eb.build(); }
eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(ipv6b) .paddingAtBuild(true);
@Override protected Packet getWholePacket() throws UnknownHostException { IpV4Packet.Builder ipv4b = new IpV4Packet.Builder(); ipv4b .version(IpVersion.IPV4) .tos(IpV4Rfc1349Tos.newInstance((byte) 0)) .identification((short) 100) .ttl((byte) 100) .protocol(IpNumber.ICMPV4) .srcAddr( (Inet4Address) InetAddress.getByAddress(new byte[] {(byte) 192, (byte) 0, (byte) 2, (byte) 1})) .dstAddr( (Inet4Address) InetAddress.getByAddress(new byte[] {(byte) 192, (byte) 0, (byte) 2, (byte) 2})) .payloadBuilder(packet.getBuilder().correctChecksumAtBuild(true)) .correctChecksumAtBuild(true) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV4) .payloadBuilder(ipv4b) .paddingAtBuild(true); return eb.build(); }
eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV4) .payloadBuilder(ipv4b) .paddingAtBuild(true);
eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV4) .payloadBuilder(ipv4b) .paddingAtBuild(true);
eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV4) .payloadBuilder(ipv4b) .paddingAtBuild(true);
@Override protected Packet getWholePacket() { IpV4Packet.Builder IpV4b = new IpV4Packet.Builder(); IpV4b.version(IpVersion.IPV4) .tos(IpV4Rfc1349Tos.newInstance((byte) 0)) .identification((short) 100) .ttl((byte) 100) .protocol(IpNumber.TCP) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder( packet .getBuilder() .correctChecksumAtBuild(true) .correctLengthAtBuild(true) .paddingAtBuild(true)) .correctChecksumAtBuild(true) .correctLengthAtBuild(true) .paddingAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV4) .payloadBuilder(IpV4b) .paddingAtBuild(true); eb.get(TcpPacket.Builder.class).dstAddr(dstAddr).srcAddr(srcAddr); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder ipv6b = new IpV6Packet.Builder(); ipv6b .version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .payloadLength((short) 28) .nextHeader(IpNumber.getInstance((byte) 254)) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .correctLengthAtBuild(false) .payloadBuilder(packet.getBuilder()); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(ipv6b) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class).dstAddr(srcAddr).srcAddr(dstAddr); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder ipv6b = new IpV6Packet.Builder(); ipv6b .version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.ICMPV6) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .correctLengthAtBuild(true) .payloadBuilder( packet.getBuilder().srcAddr(srcAddr).dstAddr(dstAddr).correctChecksumAtBuild(true)); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(ipv6b) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder IpV6b = new IpV6Packet.Builder(); IpV6b.version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.UDP) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder(packet.getBuilder().correctChecksumAtBuild(true).correctLengthAtBuild(true)) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(IpV6b) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class).dstAddr(dstAddr).srcAddr(srcAddr); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder IpV6b = new IpV6Packet.Builder(); IpV6b.version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.IPV6_DST_OPTS) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder(packet.getBuilder().correctLengthAtBuild(true)) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(IpV6b) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class).dstAddr(dstAddr).srcAddr(srcAddr); return eb.build(); }
@Override protected Packet getWholePacket() { LlcPacket llc = new LlcPacket.Builder() .dsap(LlcNumber.SNAP) .ssap(LlcNumber.SNAP) .control( new LlcControlUnnumbered.Builder() .modifierFunction(LlcControlModifierFunction.UI) .pfBit(false) .build()) .payloadBuilder(new SimpleBuilder(packet)) .build(); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(((ArpPacket) packet.getPayload()).getHeader().getDstHardwareAddr()) .srcAddr(((ArpPacket) packet.getPayload()).getHeader().getSrcHardwareAddr()) .type(EtherType.getInstance((short) llc.length())) .payloadBuilder(new SimpleBuilder(llc)) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder IpV6b = new IpV6Packet.Builder(); IpV6b.version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.IPV6_ROUTE) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder(packet.getBuilder()) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(IpV6b) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class).dstAddr(dstAddr).srcAddr(srcAddr); return eb.build(); }
@Override protected Packet getWholePacket() { IpV6Packet.Builder IpV6b = new IpV6Packet.Builder(); IpV6b.version(IpVersion.IPV6) .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0x12)) .flowLabel(IpV6SimpleFlowLabel.newInstance(0x12345)) .nextHeader(IpNumber.IPV6_HOPOPT) .hopLimit((byte) 100) .srcAddr(srcAddr) .dstAddr(dstAddr) .payloadBuilder(packet.getBuilder()) .correctLengthAtBuild(true); EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(IpV6b) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class).dstAddr(dstAddr).srcAddr(srcAddr); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("fe:00:00:00:00:02")) .srcAddr(MacAddress.getByName("fe:00:00:00:00:01")) .type(EtherType.IPV6) .payloadBuilder(packet.getBuilder()) .paddingAtBuild(true); eb.get(UdpPacket.Builder.class) .dstAddr(packet.getHeader().getDstAddr()) .srcAddr(packet.getHeader().getSrcAddr()); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(packet.getHeader().getDstHardwareAddr()) .srcAddr(packet.getHeader().getSrcHardwareAddr()) .type(EtherType.ARP) .payloadBuilder(new SimpleBuilder(packet)) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(((ArpPacket) packet.getPayload()).getHeader().getDstHardwareAddr()) .srcAddr(((ArpPacket) packet.getPayload()).getHeader().getSrcHardwareAddr()) .type(EtherType.getInstance((short) packet.length())) .payloadBuilder(new SimpleBuilder(packet)) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(((ArpPacket) packet.getPayload()).getHeader().getDstHardwareAddr()) .srcAddr(((ArpPacket) packet.getPayload()).getHeader().getSrcHardwareAddr()) .type(EtherType.DOT1Q_VLAN_TAGGED_FRAMES) .payloadBuilder(new SimpleBuilder(packet)) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("aa:bb:cc:dd:ee:ff")) .srcAddr(MacAddress.getByName("11:22:33:44:55:66")) .type(EtherType.getInstance((short) packet.length())) .payloadBuilder(new SimpleBuilder(packet)) .paddingAtBuild(true); return eb.build(); }
@Override protected Packet getWholePacket() { EthernetPacket.Builder eb = new EthernetPacket.Builder(); eb.dstAddr(MacAddress.getByName("aa:bb:cc:dd:ee:ff")) .srcAddr(MacAddress.getByName("11:22:33:44:55:66")) .type(EtherType.getInstance((short) packet.length())) .payloadBuilder(new SimpleBuilder(packet)) .paddingAtBuild(true); return eb.build(); }