Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8132507

Inet4AddressImpl.getLocalHostName returns invalid value

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P3 P3
    • None
    • 8u40
    • core-libs
    • x86_64
    • linux

      FULL PRODUCT VERSION :
      java version "1.8.0_45"
      Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
      Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)


      ADDITIONAL OS VERSION INFORMATION :
      Linux mybox 2.6.32-220.13.1.el6.centos.plus.x86_64 #1 SMP Wed Apr 18 02:32:59 BST 2012 x86_64 x86_64 x86_64 GNU/Linux

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      $ hostname

      mybox

      $ hostname -i

      185.69.214.74

      $ host $(185.69.214.74)

      74.214.69.185.in-addr.arpa domain name pointer 185-69-214-74.ded.intelignet.com.br.

      A DESCRIPTION OF THE PROBLEM :
      If I omit "-Djava.net.preferIPv4Stack=true", InetAddress.getLocalHost calls Inet6AddressImpl.getLocalHostName (in line 1453), which returns "mybox" and everything works just fine.

      However, if I do use "-Djava.net.preferIPv4Stack=true", InetAddress.getLocalHost calls Inet4AddressImpl.getLocalHostName which returns "185-69-214-74.ded.intelignet.com.br".

      REGRESSION. Last worked in version 7u75

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.7.0_45"
      Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
      Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)


      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Compile and run the provided test case using the option -Djava.net.preferIPv4Stack=true

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      mybox/185.69.214.74
      ACTUAL -
      java.net.UnknownHostException: 185-69-214-74.ded.intelignet.com.br: 185-69-214-74.ded.intelignet.com.br: unknown error
              at java.net.InetAddress.getLocalHost(InetAddress.java:1484)
              at GetLocalHost.main(GetLocalHost.java:9)

      Caused by: java.net.UnknownHostException: 185-69-214-74.ded.intelignet.com.br: unknown error
              at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
              at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:907)
              at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1302)
              at java.net.InetAddress.getLocalHost(InetAddress.java:1479)
              ... 1 more


      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      java.net.UnknownHostException: 185-69-214-74.ded.intelignet.com.br: 185-69-214-74.ded.intelignet.com.br: unknown error
              at java.net.InetAddress.getLocalHost(InetAddress.java:1484)
              at GetLocalHost.main(GetLocalHost.java:9)

      Caused by: java.net.UnknownHostException: 185-69-214-74.ded.intelignet.com.br: unknown error
              at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
              at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:907)
              at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1302)
              at java.net.InetAddress.getLocalHost(InetAddress.java:1479)
              ... 1 more


      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      import java.net.InetAddress;
      import java.net.UnknownHostException;

      public class GetLocalHost {

          public static void main( final String[] args ) {

              try {
                  System.out.println( InetAddress.getLocalHost() );

              } catch ( final UnknownHostException e ) {
                  e.printStackTrace();
              }
          }

      }
      ---------- END SOURCE ----------

      CUSTOMER SUBMITTED WORKAROUND :
      edit /etc/hosts to add this line:

      185.69.214.74 185-69-214-74.ded.intelignet.com.br

            pardesha Pardeep Sharma
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: