c4 Internet Address - Inet4Address and Inet6Address

本文探讨了Java中InetAddress类的使用及其子类Inet4Address与Inet6Address的区别。重点介绍了如何判断IPv6地址是否兼容IPv4,并提供了获取兼容IPv4的IPv6地址的方法。
public final class Inet4Address extends InetAddress
public final class Inet6Address extends InetAddress


大部分时候不需要关心InetAddress是ipv4还是ipv6。在应用层活动的java程序并不需要知道这个,即使要知道,用getAddress判断byte array的大小也比用instanceof要快。

在Inet6Address中新增了方法:

public boolean isIPv4CompatibleAddress()

返回true,当且仅当ipv6的地址是这种形式

0:0:0:0:0:0:0:xxxx

即最后2个字节是ipv4,可以取出来,转换成Inet4Address。但一般很少需要这样做。

SG6654X(config-if)#hiTrafficTestRawPacketSet[01 02 03] src_ip before inet_pton: --------------------------execption information----------------------------- Process name:[dmp] Thread name:[opTask_1472] Thread stack address:[0xffff5f8fd000] Thread stack size:[2228224] dump time: 2006-01-01 08:05:05 segmentation fault trace: info.si_signo = 11 info.si_errno = 0 info.si_code = 1(SEGV_MAPERR, address not mapped to object) info.si_addr = 0x5fb18b40 ---------------------------------------------------------------------------- Register dump: r0: 000000005fb18b40 r1: 0000aaaacbcc01e1 r2: 0000ffff5fb15d00 r3: 0000ffff5fb18958 r4: 0000000000000b40 r5: 0000000000005544 r6: 0000ffff5fb162d8 r7: 656e692072657466 r8: 0101010101010101 r9: 0000ffff5fb18990 r10: 0000ffff5fb18990 r11: 0000ffff5fb18990 r12: ffffffffffffffff r13: 42545f544e455f47 r14: 44000032313a534c r15: ffffffffffffffff r16: 0000aaaacc903d68 r17: 0000ffffb1f00960 r18: 0000000000000001 r19: 0000000000000000 r20: 0000000000000073 r21: 00000000ffffffd0 r22: 0000ffffb1fc86c8 r23: 00000000ffffffff r24: 0000ffff5fb161c8 r25: 0000ffff5fb18990 r26: 000000005fb18b40 r27: 0000000000000018 r28: 0000000000000000 r29: 0000ffff5fb15ba0 r30: 0000ffffb1efb414 pc: 0000ffffb1f2e050 fp: 0000ffff5fb15ba0 pstate: 0000000080000000 ---------------------------------------------------------------------------- Backtrace: [AD] adTrafficTestSrcMacSet OK [SW] swTrafficTestSrcMacSet OK [AD] adTrafficTestDstMacSet OK [SW] swTrafficTestDstMacSet OK [AD] adTrafficTestSrcIpSet OK [SW] swTrafficTestSrcIpSet OK [AD] adTrafficTestDstIpSet OK [SW] swTrafficTestDstIpSet OK [AD] adTrafficTestLentypeSet OK [SW] swTrafficTestLentypeSet OK [AD] adTrafficTestVlanSet OK [SW] swTrafficTestVlanSet OK [OP] opTrafficTestEthernetDispatch OK <0>:[0x0000ffffb235823c]:(/fep/lib/libtpDbg.so.1.0+0x623c):{dbgSignalHandler+0xd4c} <1>:[0x0000ffffb1f2e050]:(/lib/libc-2.22.so+0x79050):{strlen+0x10} <2>:[0x0000ffffb1efb414]:(/lib/libc-2.22.so+0x46414):{_IO_vfprintf+0x1774} <3>:[0x0000ffffb1efbe24]:(/lib/libc-2.22.so+0x46e24):{buffered_vfprintf+0x94} <4>:[0x0000ffffb1ef9e64]:(/lib/libc-2.22.so+0x44e64):{_IO_vfprintf+0x1c4} <5>:[0x0000ffffb1f009e0]:(/lib/libc-2.22.so+0x4b9e0):{_IO_printf+0x80} <6>:[0x0000aaaac96befd0]:(/tplink/app/sbin/dmp+0x6defd0):{hiTrafficTestPacketSet+0x144} <7>:[0x0000aaaac96195f4]:(/tplink/app/sbin/dmp+0x6395f4):{_dalDmpTrafficTestHandler+0x518} <8>:[0x0000ffffb22c6f50]:(/fep/lib/libtpDal.so+0xbf50):{dalAdoiGetDouble+0x3bc4} <9>:[0x0000ffffb22c7ab4]:(/fep/lib/libtpDal.so+0xcab4):{dalAdoiGetDouble+0x4728} <10>:[0x0000ffffb2311efc]:(/fep/lib/libtpVChannel.so.1.0+0x2cefc):{psubChannelCommonEvCb+0x128} <11>:[0x0000ffffb231436c]:(/fep/lib/libtpVChannel.so.1.0+0x2f36c):{tpChDestroySel+0x80} <12>:[0x0000ffffb22fb81c]:(/fep/lib/libtpVChannel.so.1.0+0x1681c):{tpEvSelect+0x140} <13>:[0x0000ffffb22fb94c]:(/fep/lib/libtpVChannel.so.1.0+0x1694c):{tpEvMainLoop+0x64} <14>:[0x0000ffffb2314930]:(/fep/lib/libtpVChannel.so.1.0+0x2f930):{tpChSelMainLoop+0x18} <15>:[0x0000ffffb2321fc4]:(/fep/lib/libtpVChannel.so.1.0+0x3cfc4):{udsChannelReconnect+0x21c} <16>:[0x0000ffffb24151bc]:(/fep/lib/libgeneralLib.so.1.0+0x361bc):{pal_thread_sigstack+0x170} <17>:[0x0000ffffb201ffd0]:(/lib/libpthread-2.22.so+0x6fd0):{start_thread+0xa0} <18>:[0x0000ffffb1f7e0a0]:(/lib/libc-2.22.so+0xc90a0):{thread_start+0x30} 解释下报错
最新发布
10-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值