這是本文件的舊版!
Java Service Wrapper service can't start of pure IPv6 env
Problem
我們使用的Java Service Wrapper(後面簡稱JSW)版本是3.5.26,作業系統是Linux;我們發現在把loobpack的inet4刪除後,service就無法啟動了。從JSW log中可以發現,這是由於JSW內部溝通要使用的port無法被綁定:
本篇文章主要分享我們的解決方式。
How to resolve?
首先可以在正常使用的情況下,執行netstat確認port的綁定狀況:
root@tony:/opt# netstat -na | grep 32000 tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN從以上結果可以得知,JWS預設是綁定IPv4的127.0.0.1。於是我開始找尋JWS是否有方法可以設定這些東西,有兩個方法提供給大家。
設定Socket Type
# For IPv6 wrapper.port.address=[::1] wrapper.backend.type=SOCKET_IPv6 # For IPv4 wrapper.port.address=127.0.0.1 wrapper.backend.type=SOCKET_IPv4
使用PIPE
wrapper.backend.type=PIPE
Reference