Translated message

A translation of this page exists in English.

IPv6 が無効になっているのにもかかわらず、IPv6 の DNS 検索が行われる理由

Solution Unverified - Updated -

Issue

  • ssh や telnet などのアプリケーションは、AF_UNSPEC を指定した getaddrinfo() 関数を使用します。この関数は、AAAA (IPv6) と A (IPv4) の両方の検索を順番に呼び出します。DNS サーバーが IPV6 をブロックしたり正しく処理しなかったりすると、接続時間が遅れる可能性があります。
  • IPv6 DNS クエリーを防ぐにはどうすればよいですか?
  • getaddrinfo() はホスト名の解決に長い時間がかかります。
  • IPv6 AAAA レコードへの応答が悪いため、Java での DNS 検索が遅くなります。
  • DNS 要求が行われたときに IPv4 A レコードのみを検索するように、Java で getaddrinfo (AF_UNSPEC) システムコールの動作を変更するにはどうすればよいですか?
  • Java アプリケーションは、次のようなバックトレースで DNS 解決検索時にハングします。
"http-8080-1" daemon prio=10 tid=0x00007fba60008800 nid=0x3d5d runnable [0x00007fba96b3a000]
   java.lang.Thread.State: RUNNABLE
    at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
    at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:902)
    at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1281)
    at java.net.InetAddress.getAllByName0(InetAddress.java:1232)
    at java.net.InetAddress.getAllByName(InetAddress.java:1163)
    at java.net.InetAddress.getAllByName(InetAddress.java:1099)
    at java.net.InetAddress.getByName(InetAddress.java:1049)

Environment

  • Red Hat Enterprise Linux
  • glibc

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content