glassfish
  1. glassfish
  2. GLASSFISH-18047

specifying a network interface name for gms-bind-interface-address does not work correctly on Linux or Windows

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.1.2_b14
    • Fix Version/s: None
    • Labels:
      None
    • Environment:

      Initially discovered on Linux 2.6.18-164.0.0.0.1.el5 #1 SMP Thu Sep 3 00:21:28 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
      Confirmed also to occur on Windows XP
      Did not occur on dual stack Mac OS X 10.6.8 or IPv4 only Solaris 5.10.

      Description

      Specifying network interface "eth0" on linux OS is not working correctly. (confirmed same failure on Windows)

      Specified this issue as minor since documentation does not state that it is valid to specify a network interface
      name for gms-bind-interface-address. This capability was added to assist in machine network configuration setups
      where some machines are multihomed and we were not consistently selecting appropriate network interface on all machines
      in cluster. Specifying the network interface for the cluster to use bypasses the automated selection of the first network address to use.

      The binding address returned by InetAddress.getByName() is returning "eth0/127.0.0.1".
      The loopback interface is not appropriate for GMS inter-machine commmunications (only
      when all instances are on one machine, only used for development.)

      com.sun.enterprise.mgmt.transport.NetworkUtility identifies this issue exists.

      %java -classpath shoal-gms-impl.jar com.sun.enterprise.mgmt.transport.NetworkUtility

      Display name: eth0
      Name: eth0
      PreferIPv6Addresses: false
      InetAddress: /fe80:0:0:0:223:8bff:fe64:7a56%7
      InetAddress: /10.133.184.160
      Up? true
      Loopback? false
      PointToPoint? false
      Supports multicast? true
      Virtual? false
      Hardware address: [0, 35, -117, 100, 122, 86]
      MTU: 1500
      Network Inet Address (preferIPV6=false) /10.133.184.160
      Network Inet Address (preferIPV6=true) /fe80:0:0:0:223:8bff:fe64:7a56%7
      resolveBindInterfaceName(eth0)=127.0.0.1 /* this value should be 10.133.184.160 */

      This issue did not occur on Mac or Solaris.

        Issue Links

          Activity

          Hide
          Joe Fialli added a comment -

          A fix is completed for this issue.

          Here are network utility results with fix.

          **************************************************
          Display name: eth0
          Name: eth0
          PreferIPv6Addresses: false
          InetAddress: /fe80:0:0:0:223:8bff:fe64:7ac4%2
          InetAddress: /10.133.184.158
          Up? true
          Loopback? false
          PointToPoint? false
          Supports multicast? true
          Virtual? false
          Hardware address: [0, 35, -117, 100, 122, -60]
          MTU: 1500
          Network Inet Address (preferIPV6=false) /10.133.184.158
          Network Inet Address (preferIPV6=true) /fe80:0:0:0:223:8bff:fe64:7ac4%2
          Dec 19, 2011 8:22:23 AM com.sun.enterprise.mgmt.transport.NetworkUtility resolveBindInterfaceName
          INFO: Inet4Address.getByName(eth0) returned a local address eth0/127.0.0.1 so ignoring it
          Dec 19, 2011 8:22:23 AM com.sun.enterprise.mgmt.transport.NetworkUtility resolveBindInterfaceName
          INFO: Inet6Address.getByName(eth0) returned a local address eth0/127.0.0.1 so ignoring it
          resolveBindInterfaceName(eth0)=10.133.184.158

          The INFO message confirming the fix will be deleted before put back.

          Show
          Joe Fialli added a comment - A fix is completed for this issue. Here are network utility results with fix. ************************************************** Display name: eth0 Name: eth0 PreferIPv6Addresses: false InetAddress: /fe80:0:0:0:223:8bff:fe64:7ac4%2 InetAddress: /10.133.184.158 Up? true Loopback? false PointToPoint? false Supports multicast? true Virtual? false Hardware address: [0, 35, -117, 100, 122, -60] MTU: 1500 Network Inet Address (preferIPV6=false) /10.133.184.158 Network Inet Address (preferIPV6=true) /fe80:0:0:0:223:8bff:fe64:7ac4%2 Dec 19, 2011 8:22:23 AM com.sun.enterprise.mgmt.transport.NetworkUtility resolveBindInterfaceName INFO: Inet4Address.getByName(eth0) returned a local address eth0/127.0.0.1 so ignoring it Dec 19, 2011 8:22:23 AM com.sun.enterprise.mgmt.transport.NetworkUtility resolveBindInterfaceName INFO: Inet6Address.getByName(eth0) returned a local address eth0/127.0.0.1 so ignoring it resolveBindInterfaceName(eth0)=10.133.184.158 The INFO message confirming the fix will be deleted before put back.
          Hide
          Joe Fialli added a comment -

          The issue that is blocked required to specify gms-bind-interface-address
          as network interface due to some machines in cluster having virtual software XEN
          creating virtual network interfaces that are interfering with the automated selection
          of an IP address to represent a machine.

          Show
          Joe Fialli added a comment - The issue that is blocked required to specify gms-bind-interface-address as network interface due to some machines in cluster having virtual software XEN creating virtual network interfaces that are interfering with the automated selection of an IP address to represent a machine.
          Hide
          Joe Fialli added a comment -

          Did not feel comfortable including this fix at late stages of 3.1.2.
          This functionality is not explicitly documented and this method was suggested as
          an easier configuration alternative than what is documented.

          Here is link to documented way to specify which network interface on
          a multi-home machine to use for GMS.
          Link: http://docs.oracle.com/cd/E18930_01/html/821-2426/gjfnl.html#gjdlw

          Show
          Joe Fialli added a comment - Did not feel comfortable including this fix at late stages of 3.1.2. This functionality is not explicitly documented and this method was suggested as an easier configuration alternative than what is documented. Here is link to documented way to specify which network interface on a multi-home machine to use for GMS. Link: http://docs.oracle.com/cd/E18930_01/html/821-2426/gjfnl.html#gjdlw

            People

            • Assignee:
              Joe Fialli
              Reporter:
              Joe Fialli
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: