Affects: Release Notes Workaround Description: Workaround for this is to change the argument in domain.conf to -Djava.net.preferIPv4Stack=false (or remove it); after that, the process will know that it is supposed to use IPv6. Note also that the standard domain.xml includes the following: <system-properties> <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 --> <property name="java.net.preferIPv4Stack" value="true"/> </system-properties> That property will need to be removed or commented out. project_key: JBPAPP6 Try running EAP domain mode like this: {noformat} bin/domain.sh -Djava.net.preferIPv4Stack=false -bmanagement=::1 {noformat} It will fail: {noformat} [Host Controller] 09:40:49,647 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.network.management: org.jboss.msc.service.StartException in service jboss.network.management: JBAS015810: failed to resolve interface management [Host Controller] at org.jboss.as.server.services.net.NetworkInterfaceService.start(NetworkInterfaceService.java:97) [jboss-as-server-7.1.1.Final-redhat-1.jar:7.1.1.Final-redhat-1] [Host Controller] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA-redhat-1.jar:1.0.2.GA-redhat-1] [Host Controller] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA-redhat-1.jar:1.0.2.GA-redhat-1] [Host Controller] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_30] [Host Controller] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_30] [Host Controller] at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30] {noformat} Other interfaces work and can be bound to ipv6, just 'management' does not. (In standalone mode, this issue is not present.) Blocks testing of Admin console,Native+HTTP interfaces in domain mode in IPv6, not marking as blocker because workaround exists.
Workaround Description: Added: Workaround for this is to change the argument in domain.conf to -Djava.net.preferIPv4Stack=false (or remove it); after that, the process will know that it is supposed to use IPv6. Workaround: Added: Workaround Exists
This is minor, since the workaround is to use domain.conf, which is the recommended approach for setting system properties that affect JVM behavior. Using the .conf file for that kind of thing has been the recommended behavior since EAP 4 and probably before that. Note also that editing domain.conf is not required, if that's a pain for QE, since all it does is set some environment variables if they are not already set. So whatever script is launching EAP can set those environment variables before launching EAP.
Link: Added: This issue is a dependency of JBPAPP-7470
This issue has been triaged and decided to not block/prevent/hold the EAP 6 release. To comply with Release Criteria stating that no issues with Critical or Blocker priority setting can be open for the release, this is changed to priority Major.
Release Notes Docs Status: Added: Documented as Known Issue Release Notes Text: Added: If you use a command-line argument to bind to an IPv6 address at start-up, the server fails to start with the default configuration. The preferred workaround is to set the bind address in the configuration file, either <filename>domain.xml</filename> or <filename>standalone.xml</filename>. If you need to pass the IP address on the command line, add the <code>java.net.preferIPv4Stack=false</code> setting to your command. The following is an example of such a command. Affects: Added: Release Notes
Misty, the release notes text doesn't reflect my understanding of the issue. My understanding is: Attempting to disable EAP's default java.net.prefer.IPv4Stack=true setting from the command line does not work when starting a host in a managed domain. An example of disabling this setting from the command line would be: bin/domain.sh -Djava.net.preferIPv4Stack=false -bmanagement=::1 The workaround is to edit domain.conf (or domain.conf.bat on Windows systems) and remove the java.net.prefer.IPv4Stack=true setting found there, or change the value to 'false'.
Link: Removed: This issue is a dependency of JBPAPP-7470
Link: Added: This issue is a dependency of JBPAPP-9320
A fix for this would involve having the script parse all the arguments to domain.sh (and .bat), detect any -D value, and append that value to $HOST_CONTROLLER_JAVA_OPTS, which would result in it being. I don't intend to do this for EAP 6.0.1, as I believe the recommended behavior of editing domain.conf is what should be done.
I changed the title as the old title was misleading.
Changed my mind; I'll try and get this into 6.0.1.
Link: Added: This issue Cloned to JBPAPP-9726
This was resolved in ER1.
Release Notes Docs Status: Removed: Documented as Known Issue Release Notes Text: Removed: If you use a command-line argument to bind to an IPv6 address at start-up, the server fails to start with the default configuration. The preferred workaround is to set the bind address in the configuration file, either <filename>domain.xml</filename> or <filename>standalone.xml</filename>. If you need to pass the IP address on the command line, add the <code>java.net.preferIPv4Stack=false</code> setting to your command. The following is an example of such a command. Docs QE Status: Removed: NEW
Issue still exists in EAP 6.0.1 ER3
The exception is now (6.0.1.ER3) not seen in [Host Controller], but in both servers, server-one and server-two, see below: {code} [Server:server-two] 08:37:34,330 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.network.management: org.jboss.msc.service.StartException in service jboss.network.management: JBAS015810: failed to resolve interface management [Server:server-two] at org.jboss.as.server.services.net.NetworkInterfaceService.start(NetworkInterfaceService.java:97) [jboss-as-server-7.1.3.Final-redhat-3.jar:7.1.3.Final-redhat-3] [Server:server-two] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA-redhat-2.jar:1.0.2.GA-redhat-2] [Server:server-two] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA-redhat-2.jar:1.0.2.GA-redhat-2] [Server:server-two] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_30] [Server:server-two] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_30] [Server:server-two] at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30] [Server:server-two] {code} And, workaround is not working. Even adding -Djava.net.preferIPv6Addresses=true is not helping. Therefore, raising priority to critical.
Workaround: Removed: Workaround Exists
The standard domain.xml includes the following: <system-properties> <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 --> <property name="java.net.preferIPv4Stack" value="true"/> </system-properties> That property will need to be removed or commented out. I have added that information to the Workaround Description. With that done and -Djava.net.preferIPv4Stack=true removed from domain.conf, starting a process with "./domain.sh -bmanagement=::1" works fine.
Workaround Description: Removed: Workaround for this is to change the argument in domain.conf to -Djava.net.preferIPv4Stack=false (or remove it); after that, the process will know that it is supposed to use IPv6. Added: Workaround for this is to change the argument in domain.conf to -Djava.net.preferIPv4Stack=false (or remove it); after that, the process will know that it is supposed to use IPv6. Note also that the standard domain.xml includes the following: <system-properties> <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 --> <property name="java.net.preferIPv4Stack" value="true"/> </system-properties> That property will need to be removed or commented out.
I forgot the original point of this JIRA was wanting to not have to edit domain.conf. I just verified that with the <property name="java.net.preferIPv4Stack" value="true"/> removed from domain.xml but domain.conf unedited, this works: ./domain.sh -Djava.net.preferIPv4Stack=false -bmanagement=::1
Brian, thanks for the update. The workaround I used only advised to edit domain.conf, not domain.xml.
Closing based on above Brian's comment and workaround verification.