Uploaded image for project: 'mod_cluster'
  1. mod_cluster
  2. MODCLUSTER-339

"proxy: DNS lookup failure" with IPv6 on Solaris

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Done
    • Affects Version/s: 1.2.3.Final, 1.2.4.Final
    • Fix Version/s: 1.2.5.Final
    • Component/s: None
    • Labels:
    • Environment:

      Solaris 10 x86, Solaris 11 x86, Solaris 11 SPARC

      Description

      Failure with mod_cluster

      Having the following setting:

      mod_cluster.conf

      LoadModule slotmem_module modules/mod_slotmem.so
      LoadModule manager_module modules/mod_manager.so
      LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
      LoadModule advertise_module modules/mod_advertise.so
       
      MemManagerFile "/tmp/mod_cluster-eap6/jboss-ews-2.0/var/cache/mod_cluster"
      ServerName [2620:52:0:105f::ffff:50]:2080
       
      <IfModule manager_module>
        Listen [2620:52:0:105f::ffff:50]:6666
        LogLevel debug
        <VirtualHost [2620:52:0:105f::ffff:50]:6666>
          ServerName [2620:52:0:105f::ffff:50]:6666
          <Directory />
            Order deny,allow
            Deny from all
            Allow from all
          </Directory>
          KeepAliveTimeout 60
          MaxKeepAliveRequests 0
          ServerAdvertise on
          AdvertiseFrequency 5
          ManagerBalancerName qacluster
          AdvertiseGroup [ff01::7]:23964
          EnableMCPMReceive
          <Location /mcm>
            SetHandler mod_cluster-manager
            Order deny,allow
            Deny from all
            Allow from all
          </Location>
        </VirtualHost>
      </IfModule>
      

      I get a weird proxy: DNS lookup failure as soon as worker sends CONFIGURE}:

      access_log

      2620:52:0:105f::ffff:50 - - [16/May/2013:08:37:24 -0400] "INFO / HTTP/1.1" 200 - "-" "ClusterListener/1.0"
      2620:52:0:105f::ffff:50 - - [16/May/2013:08:37:24 -0400] "CONFIG / HTTP/1.1" 200 - "-" "ClusterListener/1.0"
      2620:52:0:105f::ffff:50 - - [16/May/2013:08:37:24 -0400] "STATUS / HTTP/1.1" 200 64 "-" "ClusterListener/1.0"
      ...
      

      error_log

      ...
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(1923): manager_trans INFO (/)
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(2598): manager_handler INFO (/) processing: ""
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(2647): manager_handler INFO  OK
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(1923): manager_trans CONFIG (/)
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(2598): manager_handler CONFIG (/) processing: "JVMRoute=jboss-eap-6.1&Host=%5B2620%3A52%3A0%3A105f%3A0%3A0%3Affff%3A50%252%5D&Maxattempts=1&Port=8009&StickySessionForce=No&Type=ajp&ping=10"
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(2647): manager_handler CONFIG  OK
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(1923): manager_trans STATUS (/)
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(2598): manager_handler STATUS (/) processing: "JVMRoute=jboss-eap-6.1&Load=100"
      [Thu May 16 08:37:24 2013] [debug] mod_manager.c(1638): Processing STATUS
      [Thu May 16 08:37:24 2013] [debug] mod_proxy_cluster.c(655): add_balancer_node: Create balancer balancer://qacluster
      [Thu May 16 08:37:24 2013] [debug] mod_proxy_cluster.c(426): Created: worker for ajp://[2620:52:0:105f:0:0:ffff:50%2]:8009
      [Thu May 16 08:37:24 2013] [debug] mod_proxy_cluster.c(532): proxy: initialized worker 1 in child 16847 for (2620:52:0:105f:0:0:ffff:50%2) min=0 max=25 smax=25
      [Thu May 16 08:37:24 2013] [debug] mod_proxy_cluster.c(601): Created: worker for ajp://[2620:52:0:105f:0:0:ffff:50%2]:8009 1 (status): 1
      [Thu May 16 08:37:24 2013] [debug] proxy_util.c(2011): proxy: ajp: has acquired connection for (2620:52:0:105f:0:0:ffff:50%2)
      [Thu May 16 08:37:24 2013] [debug] proxy_util.c(2067): proxy: connecting ajp://[2620:52:0:105f:0:0:ffff:50%2]:8009/ to 2620:52:0:105f:0:0:ffff:50%2:8009
      [Thu May 16 08:37:24 2013] [error] [client 2620:52:0:105f::ffff:50] proxy: DNS lookup failure for: 2620:52:0:105f:0:0:ffff:50%2 returned by /
      [Thu May 16 08:37:24 2013] [debug] proxy_util.c(2029): proxy: ajp: has released connection for (2620:52:0:105f:0:0:ffff:50%2)
      ...
      

      An attempt to access the mod_cluster manager console yields an unpleasant NOTOK (obviously, we have All workers are in error state...):

      curl -g [2620:52:0:105f::ffff:50]:6666/mcm
      ...
      <h1> Node jboss-eap-6.1 (ajp://[2620:52:0:105f:0:0:ffff:50%2]:8009): </h1>
      <a href="/mcm?nonce=1bddeeea-f9d5-eeea-ee5b-e3a5e3c0a965&Cmd=ENABLE-APP&Range=NODE&JVMRoute=jboss-eap-6.1">Enable Contexts</a> <a href="/mcm?nonce=1bddeeea-f9d5-eeea-ee5b-e3a5e3c0a965&Cmd=DISABLE-APP&Range=NODE&JVMRoute=jboss-eap-6.1">Disable Contexts</a><br/>
      Balancer: qacluster,LBGroup: ,Flushpackets: Off,Flushwait: 10000,Ping: 10000000,Smax: 26,Ttl: 60000000,Status: NOTOK,Elected: 0,Read: 0,Transferred: 0,Connected: 0,Load: -1
      

      You might take a look at the logs: error_log-mod_cluster, access_log-mod_cluster.

      ProxyPass itself works just fine

      On the other hand, when I had tried this:

      proxypass.conf

      LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
       
      ServerName [2620:52:0:105f::ffff:50]:2080
      Listen [2620:52:0:105f::ffff:50]:6666
      LogLevel debug
       
      <VirtualHost [2620:52:0:105f::ffff:50]:6666>
          ServerName [2620:52:0:105f::ffff:50]:6666
          ProxyPass / ajp://[2620:52:0:105f:0:0:ffff:50]:8009/
          ProxyPassReverse / ajp://[2620:52:0:105f:0:0:ffff:50]:8009/
          <Directory />
              Order deny,allow
              Deny from all
              Allow from all
          </Directory>
      </VirtualHost>
      

      I received:

      error_log

      ...
      [Thu May 16 08:29:00 2013] [debug] mod_proxy_ajp.c(45): proxy: AJP: canonicalising URL //[2620:52:0:105f:0:0:ffff:50]:8009/
      [Thu May 16 08:29:00 2013] [debug] proxy_util.c(1506): [client 2620:52:0:105f::ffff:50] proxy: ajp: found worker ajp://[2620:52:0:105f:0:0:ffff:50]:8009/ for ajp://[2620:52:0:105f:0:0:ffff:50]:8009/
      [Thu May 16 08:29:00 2013] [debug] mod_proxy.c(1020): Running scheme ajp handler (attempt 0)
      [Thu May 16 08:29:00 2013] [debug] mod_proxy_http.c(1963): proxy: HTTP: declining URL ajp://[2620:52:0:105f:0:0:ffff:50]:8009/
      [Thu May 16 08:29:00 2013] [debug] mod_proxy_ajp.c(681): proxy: AJP: serving URL ajp://[2620:52:0:105f:0:0:ffff:50]:8009/
      [Thu May 16 08:29:00 2013] [debug] proxy_util.c(2011): proxy: AJP: has acquired connection for (2620:52:0:105f:0:0:ffff:50)
      [Thu May 16 08:29:00 2013] [debug] proxy_util.c(2067): proxy: connecting ajp://[2620:52:0:105f:0:0:ffff:50]:8009/ to 2620:52:0:105f:0:0:ffff:50:8009
      [Thu May 16 08:29:00 2013] [debug] proxy_util.c(2193): proxy: connected / to 2620:52:0:105f:0:0:ffff:50:8009
      [Thu May 16 08:29:00 2013] [debug] proxy_util.c(2444): proxy: AJP: fam 26 socket created to connect to 2620:52:0:105f:0:0:ffff:50
      ...
      

      And from the client's side, it worked:
      curl -g [2620:52:0:105f::ffff:50]:6666/ brought me the worker's home page (EAP's welcome in this case).

      Take a look at the whole log error_log-proxypass.

      Note: The http.conf was the same both for mod_cluster and for proxypass test.

        Gliffy Diagrams

          Attachments

          1. access_log-mod_cluster
            1 kB
          2. error_log_pull20
            115 kB
          3. error_log-mod_cluster
            21 kB
          4. error_log-mod_cluster-RHEL
            75 kB
          5. error_log-proxypass
            6 kB
          6. http.conf
            34 kB
          7. mod_manager.so
            223 kB
          8. sockaddr.lo_fedora18_x86_64
            145 kB
          9. sockaddr.lo_solaris11_sparc64
            102 kB

            Activity

              People

              • Assignee:
                jfclere Jean-Frederic Clere
                Reporter:
                mbabacek Michal Karm Babacek
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: