Chuck & André -

Back about this time last year, I noticed this on my first Windows 2008 Server 
install.
It was Tomcat 5.5.27 with Native libraries 1.1.16 and Sun JDK 1.6.0_13 (all 
64-bit). I really think it has something to do with APR, though I haven't 
tested it without the native lib.  My solution was to specify the IPv4 address.
Add to that the server.xml only has the one <Connector> entry, so I think it's 
setting up only on the one address. 

Here are the relevant portions of the server.xml:
<Server port="8005" shutdown="SHUTDOWN">

  <!-- Comment these entries out to disable JMX MBeans support used for the 
       administration web application -->
  <Listener className="org.apache.catalina.core.AprLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener 
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener 
className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>

  <!-- Global JNDI resources -->
  <GlobalNamingResources>

    <!-- Test entry for demonstration purposes -->
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>

    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users -->
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
       description="User database that can be updated and saved"
           factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
          pathname="conf/tomcat-users.xml" />

  </GlobalNamingResources>

  <!-- Define the Tomcat Stand-Alone Service -->
  <Service name="Catalina">

    <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
    <Connector 
port="8080"               maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" 
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

And here's the relevant netstat output:

C:\Users\Administrator>netstat -an

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:25             0.0.0.0:0              LISTENING
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1311           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1688           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:5357           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:8087           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49152          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49153          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49154          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49155          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49158          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49159          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49160          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49177          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49818          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49819          0.0.0.0:0              LISTENING
  TCP    127.0.0.1:8005         0.0.0.0:0              LISTENING
  TCP    [::]:135               [::]:0                 LISTENING
  TCP    [::]:445               [::]:0                 LISTENING
  TCP    [::]:1311              [::]:0                 LISTENING
  TCP    [::]:1688              [::]:0                 LISTENING
  TCP    [::]:3389              [::]:0                 LISTENING
  TCP    [::]:5357              [::]:0                 LISTENING
  TCP    [::]:8009              [::]:0                 LISTENING
  TCP    [::]:8080              [::]:0                 LISTENING
  TCP    [::]:8087              [::]:0                 LISTENING
  TCP    [::]:49152             [::]:0                 LISTENING
  TCP    [::]:49153             [::]:0                 LISTENING
  TCP    [::]:49154             [::]:0                 LISTENING
  TCP    [::]:49155             [::]:0                 LISTENING
  TCP    [::]:49158             [::]:0                 LISTENING
  TCP    [::]:49159             [::]:0                 LISTENING
  TCP    [::]:49160             [::]:0                 LISTENING
  TCP    [::]:49177             [::]:0                 LISTENING
  TCP    [::]:49818             [::]:0                 LISTENING
  TCP    [::]:49819             [::]:0                 LISTENING

Notice that the Server port went specifically to localhost, but the other two 
went to the IPv6-any address.  The same occurred for the 32-bit version.
When I started the 32-bit setup with the APR 1.1.4 that was initially 
downloaded, the Connectors went only to the IPv4-any address.  I guessing that 
1.1.4 doesn't support IPv6 at all.
When I started the 32-bit setup without the APR native binaries, then I saw the 
behavior you state should be occuring:
C:\Users\Administrator>netstat -an

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:25             0.0.0.0:0              LISTENING
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1311           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1688           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:5357           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:8009           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:8087           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49152          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49153          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49154          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49155          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49158          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49159          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49160          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49177          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49818          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49819          0.0.0.0:0              LISTENING
  TCP    127.0.0.1:8005         0.0.0.0:0              LISTENING
  TCP    [::]:135               [::]:0                 LISTENING
  TCP    [::]:445               [::]:0                 LISTENING
  TCP    [::]:1311              [::]:0                 LISTENING
  TCP    [::]:1688              [::]:0                 LISTENING
  TCP    [::]:3389              [::]:0                 LISTENING
  TCP    [::]:5357              [::]:0                 LISTENING
  TCP    [::]:8009              [::]:0                 LISTENING
  TCP    [::]:8080              [::]:0                 LISTENING
  TCP    [::]:8087              [::]:0                 LISTENING
  TCP    [::]:49152             [::]:0                 LISTENING
  TCP    [::]:49153             [::]:0                 LISTENING
  TCP    [::]:49154             [::]:0                 LISTENING
  TCP    [::]:49155             [::]:0                 LISTENING
  TCP    [::]:49158             [::]:0                 LISTENING
  TCP    [::]:49159             [::]:0                 LISTENING
  TCP    [::]:49160             [::]:0                 LISTENING
  TCP    [::]:49177             [::]:0                 LISTENING
  TCP    [::]:49818             [::]:0                 LISTENING
  TCP    [::]:49819             [::]:0                 LISTENING

So my conclusion is that the APR library, at least at 1.1.16, only opens one 
connection per connector. Or perhaps Tomcat is only opening 1 connection when 
it takes the APR support code path.

Jeff

Note: I didn't try the no-native 64-bit because I have other production 
instances using the same Catalina_base/bin directory.

-----Original Message-----
From: André Warnier [mailto:a...@ice-sa.com] 
Sent: Friday, May 07, 2010 9:50 AM
To: Tomcat Users List
Subject: Re: Re : Re : Re : Tomcat 5.5.29 does not accept connections from 
outside

Eyrignoux Marc wrote:
> 
> Hi Charles,
> 
>> You can try setting the address attribute of your <Connector> 
> elements to "0.0.0.0" to force IPv4.
> 
> It works, thank you !!!!
> NB: Other people might experience the same problem. I don't know where it 
> comes from, may be from an interaction between Windows Server 2008 and Tomcat 
> 5.5.29 ?
> 
May I jump in to add somewhat to the question ?
Thank you.

Can someone explain this a little bit more in detail, or point to some 
rough explanation page somewhere ?
Basically :
- why did that Tomcat 5.5.29 "listen only on IPv6" until it was forced 
to IPv4 by specifying "0.0.0.0" in the Connector ?
- why, when Tomcat is listening (only) on IPv6 [::]:8080, does it not 
accept telnet connections on port 8080 ?
- why, when Tomcat was listening (only) on IPv6 [::]:8080, did HTTP:8080 
connections from a browser on localhost work, but not the ones from 
other stations ?
- can you set Tomcat to listen on /both/ IPv4 and IPv6 on port 8080 at 
the same time ?

Thanks for any pointers.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org



*******************************  NOTICE  *********************************
This message is intended for the use of the individual or entity to which 
it is addressed and may contain information that is privileged, 
confidential, and exempt from disclosure under applicable law.  If the 
reader of this message is not the intended recipient or the employee or 
agent responsible for delivering this message to the intended recipient, 
you are hereby notified that any dissemination, distribution, or copying 
of this communication is strictly prohibited.  If you have received this 
communication in error, please notify us immediately by reply or by 
telephone (call us collect at 512-343-9100) and immediately delete this 
message and all its attachments.

Reply via email to