0

Jerseyは、IPv4 アドレスを取得したいときにJava プロパティを明示的に に設定した次のコードでも IPv6 アドレスを返しjava.net.preferIPv4Stackます。true

@Path("/getip")
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
@Produces(MediaType.TEXT_PLAIN)
public class PublicIp {

    @GET
    public Response getPublicIp(@Context HttpServletRequest req) {
        System.setProperty("java.net.preferIPv4Stack" , "true");
        String address = req.getRemoteAddr();
        return Response.ok(address).build();
    }
}

0:0:0:0:0:0:0:1ローカルで消費された場合に返されます。Jersey に IPv4 形式を返すように強制するにはどうすればよいですか?

4

1 に答える 1