Class NetUtil

java.lang.Object
org.qiunet.utils.net.NetUtil

public class NetUtil extends Object
  • Field Details

    • PORT_RANGE_MAX

      public static final int PORT_RANGE_MAX
      默认最大端口,65535
      See Also:
    • PORT_RANGE_MIN

      public static final int PORT_RANGE_MIN
      默认最小端口,1024
      See Also:
  • Constructor Details

    • NetUtil

      public NetUtil()
  • Method Details

    • isLocalIp

      public static boolean isLocalIp(String ip)
      是否是本机ip 本机也返回true
      Returns:
    • isInnerIp

      public static boolean isInnerIp(String ip)
      是否是内网IP
      Returns:
    • isInnerIp

      public static boolean isInnerIp(InetAddress inetAddress)
      是否是内网IP
      Returns:
    • getInnerIp

      public static String getInnerIp()
      得到内网ip v4
      Returns:
    • isValidPort

      public static boolean isValidPort(int port)
      是否为有效的端口
      此方法并不检查端口是否被占用
      Parameters:
      port - 端口号
      Returns:
      是否有效
    • getPublicIp6

      public static String getPublicIp6()
      得到外网IP6
      Returns:
    • getPublicIp4

      public static String getPublicIp4()
      得到外网IP
      Returns:
    • isValidIp4

      public static boolean isValidIp4(String host)
      是否是合格的ip4
      Parameters:
      host -
      Returns:
    • isValidIp6

      public static boolean isValidIp6(String inet6Address)
      是否是合格的ip6
      Parameters:
      inet6Address -
      Returns:
    • socketSendData

      public static void socketSendData(String host, int port, byte[] data) throws IOException
      使用Socket发送数据
      Parameters:
      host - Server主机
      port - Server端口
      data - 数据
      Throws:
      IOException
    • udpSendData

      public static void udpSendData(String host, int port, byte[] data) throws IOException
      使用udp发送数据
      Parameters:
      host - Server主机
      port - Server端口
      data - 数据
      Throws:
      IOException
    • getLocalHostName

      public static String getLocalHostName()
      得到主机名
      Returns:
    • getAllInnerIp

      public static String[] getAllInnerIp()
      获得本机所有的ip
      Returns:
    • localIpv4s

      public static LinkedHashSet<String> localIpv4s()
      获得本机的IPv4地址列表
      返回的IP列表有序,按照系统设备顺序
      Returns:
      IP地址列表 LinkedHashSet
    • localIpv6s

      public static LinkedHashSet<String> localIpv6s()
      获得本机的IPv6地址列表
      返回的IP列表有序,按照系统设备顺序
      Returns:
      IP地址列表 LinkedHashSet
      Since:
      4.5.17
    • toIpList

      public static LinkedHashSet<String> toIpList(Set<InetAddress> addressList)
      地址列表转换为IP地址列表
      Parameters:
      addressList - 地址Inet4Address 列表
      Returns:
      IP地址字符串列表
      Since:
      4.5.17
    • localAddressList

      public static LinkedHashSet<InetAddress> localAddressList(Predicate<InetAddress> addressFilter)
      获取所有满足过滤条件的本地IP地址对象
      Parameters:
      addressFilter - 过滤器,null表示不过滤,获取所有地址
      Returns:
      过滤后的地址对象列表
      Since:
      4.5.17