当前位置: 首页>>代码示例>>Java>>正文


Java UdpPort类代码示例

本文整理汇总了Java中org.pcap4j.packet.namednumber.UdpPort的典型用法代码示例。如果您正苦于以下问题:Java UdpPort类的具体用法?Java UdpPort怎么用?Java UdpPort使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


UdpPort类属于org.pcap4j.packet.namednumber包,在下文中一共展示了UdpPort类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: processUdpPacket

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
public static void processUdpPacket(Packet packet, PcapFileSummary pcapFileSummary, PacketInfo packetInfo, Mode mode) {
    if (packet == null) {
        return; // skip empty packets
    }
    String sourceAddress = packetInfo.get(PacketInfo.SOURCE_ADDRESS);
    String destinationAddress = packetInfo.get(PacketInfo.DESTINATION_ADDRESS);
    try {
        log.trace("Converting to UDP packet");
        UdpPacket udpPacket = UdpPacket.newPacket(packet.getRawData(), 0, packet.length());
        UdpPacket.UdpHeader udpHeader = udpPacket.getHeader();
        UdpPort sourcePort = udpHeader.getSrcPort();
        UdpPort destinationPort = udpHeader.getDstPort();
        packetInfo.put(PacketInfo.SOURCE_PORT, sourcePort.valueAsString());
        packetInfo.put(PacketInfo.DESTINATION_PORT, destinationPort.valueAsString());
        if (mode == Mode.POSSIBLE_ATTACKS_ANALYSIS) {
            //pcapFileSummary.portScanDetector.add(packetInfo);
        }
        String udpSource = sourceAddress + ":" + sourcePort.toString();
        String udpDestination = destinationAddress + ":" + destinationPort.toString();
        log.trace("Adding UDP source to set: " + udpSource);
        pcapFileSummary.udpSources.add(udpSource);
        log.trace("UDP{ source: " + udpSource + ", destination: " + udpDestination + " }");
    } catch (IllegalRawDataException e) {
        log.error("Exception occurred while processing a packet. Exception was: " + e);
    }
}
 
开发者ID:rmcnew,项目名称:LiquidFortressPacketAnalyzer,代码行数:27,代码来源:UdpPacketProcessor.java

示例2: shouldCapture

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
/**
 * Checks if the given {@link Packet} should be captured.
 *
 * @param packet The packet to be checked
 * @return Returns true, if the packet should be captured, otherwise false
 */
private boolean shouldCapture(final Packet packet) {
    if (packet.contains(ArpPacket.class)) {
        ArpPacket arpPacket = packet.get(ArpPacket.class);
        if (arpPacket.getHeader().getOperation().equals(ArpOperation.REQUEST)) {
            return true;
        }
    }
    if (packet.contains(UdpPacket.class)) {
        final UdpPacket udpPacket = packet.get(UdpPacket.class);
        if (UdpPort.BOOTPS == udpPacket.getHeader().getDstPort()) {
            return true;
        }
    }
    return false;
}
 
开发者ID:openhab,项目名称:openhab2-addons,代码行数:22,代码来源:PacketCapturingService.java

示例3: pack

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
public static UdpPacket pack(
  Packet payload,
  UdpPort srcPort,
  UdpPort dstPort,
  InetAddress srcAddr,
  InetAddress dstAddr
) {
  UdpPacket.Builder builder = new UdpPacket.Builder();
  return builder.srcPort(srcPort)
                .dstPort(dstPort)
                .payloadBuilder(new SimpleBuilder(payload))
                .srcAddr(srcAddr)
                .dstAddr(dstAddr)
                .correctChecksumAtBuild(true)
                .correctLengthAtBuild(true)
                .build();
}
 
开发者ID:kaitoy,项目名称:sneo,代码行数:18,代码来源:UdpHelper.java

示例4: testHandleDnsRequestNotDnsPacket

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testHandleDnsRequestNotDnsPacket() throws Exception {
    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.HTTP)
            .dstPort(UdpPort.HTTP)
            .srcAddr(InetAddress.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr(InetAddress.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(new byte[]{1, 2, 3, 4, 5})
            );

    IpPacket ipOutPacket = new IpV4Packet.Builder()
            .version(IpVersion.IPV4)
            .tos(IpV4Rfc791Tos.newInstance((byte) 0))
            .protocol(IpNumber.UDP)
            .srcAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());
    assertNull(mockEventLoop.lastOutgoing);
    assertNull(mockEventLoop.lastResponse);
}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:30,代码来源:DnsPacketProxyTest.java

示例5: testDnsQuery

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testDnsQuery() throws Exception {
    Message message = Message.newQuery(new ARecord(new Name("notblocked.example.com."),
            0x01,
            3600,
            Inet4Address.getByAddress(new byte[]{0, 0, 0, 0})
    ));

    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.DOMAIN)
            .dstPort(UdpPort.DOMAIN)
            .srcAddr(InetAddress.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr(InetAddress.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(message.toWire())
            );

    IpPacket ipOutPacket = new IpV4Packet.Builder()
            .version(IpVersion.IPV4)
            .tos(IpV4Rfc791Tos.newInstance((byte) 0))
            .protocol(IpNumber.UDP)
            .srcAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNull(mockEventLoop.lastResponse);
    assertNotNull(mockEventLoop.lastOutgoing);
    assertEquals(Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}), mockEventLoop.lastOutgoing.getAddress());
}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:38,代码来源:DnsPacketProxyTest.java

示例6: testNoQueryDnsQuery

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testNoQueryDnsQuery() throws Exception {
    Message message = new Message();

    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.DOMAIN)
            .dstPort(UdpPort.DOMAIN)
            .srcAddr(InetAddress.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr(InetAddress.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(message.toWire())
            );

    IpPacket ipOutPacket = new IpV4Packet.Builder()
            .version(IpVersion.IPV4)
            .tos(IpV4Rfc791Tos.newInstance((byte) 0))
            .protocol(IpNumber.UDP)
            .srcAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNull(mockEventLoop.lastResponse);
    assertNull(mockEventLoop.lastOutgoing);
    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());
}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:34,代码来源:DnsPacketProxyTest.java

示例7: TrexUdpPacket

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
/**
 *
 */
public TrexUdpPacket() {
    this.srcPort = UdpPort.getInstance((short) 0);
    this.dstPort = UdpPort.getInstance((short) 0);
    this.checksum = (short) 0x7945;
    this.length = (short) 12;
}
 
开发者ID:exalt-tech,项目名称:trex-stateless-gui,代码行数:10,代码来源:TrexUdpPacket.java

示例8: buildPacket

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
/**
 * Build packet
 *
 * @throws java.net.UnknownHostException
 */
public void buildPacket() throws UnknownHostException {

    int calculatedLength = getPacketLength();
    String payloadString = payload.getPayloadType().getPadPayloadString(payload.getPayloadPattern(), calculatedLength * 2);

    udpBuilder = new UdpPacket.Builder();
    UnknownPacket.Builder unknownb = new UnknownPacket.Builder();
    unknownb.rawData(payload.getPayloadPad(payloadString, calculatedLength));
    Inet4Address srcAddr = (Inet4Address) InetAddress.getByAddress(
            new byte[]{(byte) 0, (byte) 0, (byte) 0, (byte) 0}
    );
    Inet4Address dstAddr = (Inet4Address) InetAddress.getByAddress(
            new byte[]{(byte) 0, (byte) 0, (byte) 0, (byte) 0}
    );

    udpBuilder.srcPort(UdpPort.getInstance((short) srcPort.value()))
            .dstPort(UdpPort.getInstance((short) dstPort.value()))
            .srcAddr(srcAddr)
            .dstAddr(dstAddr)
            .length((short) calculatedLength)
            .payloadBuilder(unknownb)
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(false);

    this.packet = udpBuilder.build();
}
 
开发者ID:exalt-tech,项目名称:trex-stateless-gui,代码行数:32,代码来源:TrexUdpPacket.java

示例9: testHandleDnsRequestEmptyPacket

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testHandleDnsRequestEmptyPacket() throws Exception {
    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.DOMAIN)
            .dstPort(UdpPort.DOMAIN)
            .srcAddr(InetAddress.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr(InetAddress.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(new byte[0])
            );

    IpPacket ipOutPacket = new IpV4Packet.Builder()
            .version(IpVersion.IPV4)
            .tos(IpV4Rfc791Tos.newInstance((byte) 0))
            .protocol(IpNumber.UDP)
            .srcAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNotNull(mockEventLoop.lastOutgoing);
    assertEquals(0, mockEventLoop.lastOutgoing.getLength());
    assertEquals(Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}), mockEventLoop.lastOutgoing.getAddress());

    assertNull(mockEventLoop.lastResponse);

    // Check the same thing with one upstream DNS server configured.
    tinySetUp();
    dnsPacketProxy.upstreamDnsServers.add(Inet4Address.getByAddress(new byte[]{1, 1, 1, 2}));
    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNull(mockEventLoop.lastOutgoing);
    assertNull(mockEventLoop.lastResponse);

    // Check the same thing with enough upstream DNS servers configured.
    tinySetUp();
    for (byte i = 2; i < 9; i++)
        dnsPacketProxy.upstreamDnsServers.add(Inet4Address.getByAddress(new byte[]{1, 1, 1, i}));
    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNotNull(mockEventLoop.lastOutgoing);
    assertEquals(0, mockEventLoop.lastOutgoing.getLength());
    assertEquals(Inet4Address.getByAddress(new byte[]{1, 1, 1, 8}), mockEventLoop.lastOutgoing.getAddress());
    assertNull(mockEventLoop.lastResponse);

}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:54,代码来源:DnsPacketProxyTest.java

示例10: testBlockedDnsQuery

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testBlockedDnsQuery() throws Exception {
    Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
            0x01,
            3600,
            Inet4Address.getByAddress(new byte[]{0, 0, 0, 0})
    ));

    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.DOMAIN)
            .dstPort(UdpPort.DOMAIN)
            .srcAddr(InetAddress.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr(InetAddress.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(message.toWire())
            );

    IpPacket ipOutPacket = new IpV4Packet.Builder()
            .version(IpVersion.IPV4)
            .tos(IpV4Rfc791Tos.newInstance((byte) 0))
            .protocol(IpNumber.UDP)
            .srcAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 4, 4}))
            .dstAddr((Inet4Address) Inet4Address.getByAddress(new byte[]{8, 8, 8, 8}))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNotNull(mockEventLoop.lastResponse);
    assertNull(mockEventLoop.lastOutgoing);
    assertTrue(mockEventLoop.lastResponse instanceof IpPacket);
    assertTrue(mockEventLoop.lastResponse.getPayload() instanceof UdpPacket);

    Message responseMsg = new Message(mockEventLoop.lastResponse.getPayload().getPayload().getRawData());
    assertEquals(NOERROR, responseMsg.getHeader().getRcode());
    assertArrayEquals(new Record[] {}, responseMsg.getSectionArray(Section.ANSWER));
    assertNotEquals(0, responseMsg.getSectionArray(Section.AUTHORITY).length);
    assertTrue(responseMsg.getSectionArray(Section.AUTHORITY)[0] instanceof SOARecord);
    assertTrue(responseMsg.getSectionArray(Section.AUTHORITY)[0].getTTL() > 0);
}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:46,代码来源:DnsPacketProxyTest.java

示例11: testBlockedInet6DnsQuery

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Test
public void testBlockedInet6DnsQuery() throws Exception {
    Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
            0x01,
            3600,
            Inet4Address.getByAddress(new byte[]{0, 0, 0, 0})
    ));

    UdpPacket.Builder payLoadBuilder = new UdpPacket.Builder()
            .srcPort(UdpPort.DOMAIN)
            .dstPort(UdpPort.DOMAIN)
            .srcAddr((Inet6Address) Inet6Address.getByName("::0"))
            .dstAddr((Inet6Address) Inet6Address.getByName("::1"))
            .correctChecksumAtBuild(true)
            .correctLengthAtBuild(true)
            .payloadBuilder(
                    new UnknownPacket.Builder()
                            .rawData(message.toWire())
            );

    IpPacket ipOutPacket = new IpV6Packet.Builder()
            .version(IpVersion.IPV6)
            .trafficClass(IpV6SimpleTrafficClass.newInstance((byte) 0))
            .flowLabel(IpV6SimpleFlowLabel.newInstance(0))
            .nextHeader(IpNumber.UDP)
            .srcAddr((Inet6Address) Inet6Address.getByName("::0"))
            .dstAddr((Inet6Address) Inet6Address.getByName("::1"))
            .correctLengthAtBuild(true)
            .payloadBuilder(payLoadBuilder)
            .build();

    dnsPacketProxy.handleDnsRequest(ipOutPacket.getRawData());

    assertNotNull(mockEventLoop.lastResponse);
    assertNull(mockEventLoop.lastOutgoing);
    assertTrue(mockEventLoop.lastResponse instanceof IpPacket);
    assertTrue(mockEventLoop.lastResponse.getPayload() instanceof UdpPacket);

    Message responseMsg = new Message(mockEventLoop.lastResponse.getPayload().getPayload().getRawData());
    assertEquals(NOERROR, responseMsg.getHeader().getRcode());
    assertArrayEquals(new Record[] {}, responseMsg.getSectionArray(Section.ANSWER));
    assertNotEquals(0, responseMsg.getSectionArray(Section.AUTHORITY).length);
    assertTrue(responseMsg.getSectionArray(Section.AUTHORITY)[0] instanceof SOARecord);
    assertTrue(responseMsg.getSectionArray(Section.AUTHORITY)[0].getTTL() > 0);
}
 
开发者ID:julian-klode,项目名称:dns66,代码行数:46,代码来源:DnsPacketProxyTest.java

示例12: setSrcPort

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
/**
 *
 * @param srcPort
 */
public void setSrcPort(int srcPort) {
    this.srcPort = UdpPort.getInstance((short) srcPort);

}
 
开发者ID:exalt-tech,项目名称:trex-stateless-gui,代码行数:9,代码来源:TrexUdpPacket.java

示例13: setUp

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
    UdpPort.register(new UdpPort((short) RmcpPacket.PORT, "RMCP/IPMI"));
    UdpPort.register(new UdpPort((short) RspRmcpPacket.PORT, "RMCP/RSP"));
}
 
开发者ID:shevek,项目名称:ipmi4j,代码行数:6,代码来源:IpmiPacketTest.java

示例14: sendSnmpMessage

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
public void sendSnmpMessage(
  InetAddress dstAddr, int dstPort,
  byte[] message
) throws SendPacketException {
  InetAddress srcAddr;
  int srcPort;
  NetworkInterface sender;

  SnmpContext context = agent.getContextfulWorkerPool().unregisterContext();
  if (context != null) {
    // response
    sender = context.getGetter();
    IpV4Packet ipV4Packet = context.getRequestPacket().get(IpV4Packet.class);
    if (ipV4Packet != null) {
      srcAddr = context.getRequestPacket().get(IpV4Packet.class).getHeader()
                  .getDstAddr();
    }
    else {
      srcAddr = context.getRequestPacket().get(IpV6Packet.class).getHeader()
                  .getDstAddr();
    }
    srcPort = context.getRequestPacket().get(UdpPacket.class).getHeader()
                .getDstPort().value() & 0xFFFF;
  }
  else {
    // trap
    if (dstAddr instanceof Inet4Address) {
      sender = getNifByDstIpAddr((Inet4Address)dstAddr);
    }
    else {
      sender = getNifByDstIpAddr((Inet6Address)dstAddr);
    }
    srcAddr = agent.getInetAddress();
    srcPort = TRAP_SRC_PORT;
  }
  UnknownPacket.Builder unknownb = new UnknownPacket.Builder();
  unknownb.rawData(message);

  UdpPacket udpp
    = UdpHelper.pack(
        unknownb.build(),
        UdpPort.getInstance((short)srcPort),
        UdpPort.getInstance((short)dstPort),
        srcAddr,
        dstAddr
      );

  sendL4Packet(udpp, srcAddr, dstAddr, sender);
}
 
开发者ID:kaitoy,项目名称:sneo,代码行数:50,代码来源:Node.java

示例15: setDstPort

import org.pcap4j.packet.namednumber.UdpPort; //导入依赖的package包/类
/**
 *
 * @param dstPort
 */
public void setDstPort(int dstPort) {
    this.dstPort = UdpPort.getInstance((short) dstPort);
}
 
开发者ID:exalt-tech,项目名称:trex-stateless-gui,代码行数:8,代码来源:TrexUdpPacket.java


注:本文中的org.pcap4j.packet.namednumber.UdpPort类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。