付録A Java IPv4/IPv6 プロパティー
Java プロパティーの設定
Java には、IPv4 と IPv6 の設定に使用する 2 つのプロパティーがあります。これらは java.net.preferIPv4Stack
および java.net.preferIPv6Addresses
です。
java.net.preferIPv4Stack (default: false)
IPv6 が利用できる場合は、デフォルトで基礎となるネイティブソケットが IPv6 ソケットになります。このソケットにより、アプリケーションが IPv4 および IPv6 ホストからの接続を許可できるようになります。アプリケーションが IPv4 ソケットのみを使用する場合は、このプロパティーを true
に設定します。ただし、アプリケーションが IPv6 のみのホストと通信することはできません。
java.net.preferIPv6Addresses (デフォルト: false)
ホストに IPv4 アドレスと IPv6 アドレスの両方があり、IPv6 が利用できる場合には、デフォルトの動作では IPv6 上で IPv4 アドレスを使用します。これにより、後方互換性を維持できます。192.168.1.1. など、IPv4 アドレス表現に依存するアプリケーションの場合、可能な場合は IPv4 で IPv6 アドレスを使用するように、このプロパティーを true
に設定します。
これらのプロパティーを Tomcat に渡すには、JWS_HOME/tomcat/bin/setenv.*
ファイルに CATALINA_OPTS
を設定します。
JWS_HOME/tomcat/bin/setenv.sh
または JWS_HOME/tomcat/bin/setenv.bat
ファイルが存在しない場合は、作成する必要があります。
Linux の場合:
export "CATALINA_OPTS=-Djava.net.preferIPv4Stack=YOUR_VALUE -Djava.net.preferIPv6Addresses=YOUR_VALUE"
Windows の場合:
set "CATALINA_OPTS=-Djava.net.preferIPv4Stack=YOUR_VALUE -Djava.net.preferIPv6Addresses=YOUR_VALUE"
Tomcat バインディングの設定
Tomcat バインディングは、IPv6 アドレスを使用して JWS_HOME/tomcat/conf/server.xml
で設定できます。
Tomcat バインディングアドレスを指定します。
<Server … address="TOMCAT_BINDING_ADDRESS">
HTTP コネクターアドレスを指定します。
<Connector protocol="HTTP/1.1" … address="HTTP_CONNECTOR_ADDRESS">
AJP コネクターアドレスを指定します。
<Connector protocol="AJP/1.3" … address="AJP_CONNECTOR_ADDRESS">