From: Alan Chandler on 20 Dec 2009 14:10 I have just upgraded my server from lenny to unstable and I now find a tomcat application server backed has stopped working (front end on another machine has the jk_mod installed and links through using ajp on port 8009). Using netstat --listening on the tomcat machine I find that tomcat is only listening with the ip6 protocol and not ip4. Net result it has stopped working. I haven't changed anything during the upgrade, and I can't see anywhere where it is defined what protocols tomcat is listening (at least there doesn't appear to be anything in server.xml). How can I fix this so that tomcat listens using ip4 and not ip6? -- Alan Chandler http://www.chandlerfamily.org.uk -- To UNSUBSCRIBE, email to debian-user-REQUEST(a)lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster(a)lists.debian.org
From: Alan Chandler on 20 Dec 2009 15:10 Alan Chandler wrote: > I have just upgraded my server from lenny to unstable and I now find a > tomcat application server backed has stopped working (front end on > another machine has the jk_mod installed and links through using ajp on > port 8009). > > Using netstat --listening on the tomcat machine I find that tomcat is > only listening with the ip6 protocol and not ip4. Net result it has > stopped working. > > I haven't changed anything during the upgrade, and I can't see anywhere > where it is defined what protocols tomcat is listening (at least there > doesn't appear to be anything in server.xml). > > How can I fix this so that tomcat listens using ip4 and not ip6? > Netstat output owl:/var/log/tomcat5.5# netstat --listening Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:rsync *:* LISTEN tcp 0 0 localhost:mysql *:* LISTEN tcp 0 0 *:6543 *:* LISTEN tcp 0 0 *:6544 *:* LISTEN tcp 0 0 *:ssh *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp 0 0 localhost:postgresql *:* LISTEN tcp6 0 0 [::]:8009 [::]:* LISTEN tcp6 0 0 [::]:rsync [::]:* LISTEN tcp6 0 0 [::]:www [::]:* LISTEN tcp6 0 0 [::]:auth [::]:* LISTEN tcp6 0 0 [::]:8180 [::]:* LISTEN tcp6 0 0 [::]:ssh [::]:* LISTEN tcp6 0 0 localhost:ipp [::]:* LISTEN tcp6 0 0 localhost:postgresql [::]:* LISTEN tcp6 0 0 [::]:https [::]:* LISTEN udp 0 0 *:mdns *:* udp 0 0 255.255.255.255:1900 *:* udp 0 0 239.255.255.250:1900 *:* udp 0 0 *:ipp *:* udp 0 0 *:ntp *:* udp 0 0 *:33154 *:* udp 0 0 *:6549 *:* udp 0 0 *:323 *:* udp 0 0 *:bootpc *:* udp6 0 0 [::]:40262 [::]:* udp6 0 0 [::]:mdns [::]:* The strange thing here is that apache is listening only on the ip6 port 80, but it is seeing requests from my browser -- Alan Chandler http://www.chandlerfamily.org.uk -- To UNSUBSCRIBE, email to debian-user-REQUEST(a)lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster(a)lists.debian.org
From: Alexey Salmin on 21 Dec 2009 03:00 I think it's related to discussion in debian-devel: On Sun, Oct 25, 2009 at 12:24 AM, Marco d'Itri <md(a)linux.it> wrote: > I am proposing to set net.ipv6.bindv6only=1 by default for new > installations, to simplify configuration and administration of systems > using IPv6 and to make the system behaviour match the one of all other > operating systems, which default to this or just do not provide a > choice. > > When net.ipv6.bindv6only is set to 0, an application binding an > AF_INET6 listening socket to "any" will receive on the same socket IPv4 > connections as well, with the endpoint addresses converted in the form > ::ffff:1.2.3.4[1]. > > When net.ipv6.bindv6only is set to 1, an application binding an > AF_INET6 listening socket to "any" will only receive IPv6 connection and > will need to create an AF_INET listening socket to receive IPv4 > connections. > > Applications can change the behaviour for their sockets using setsockopt > and the IPV6_V6ONLY option[2], and many already do this to prevent the > need of adjusting their configuration depending on how the system is > configured. > > More information is also available in[3]. > > While net.ipv6.bindv6only=0 is useful for daemons which are not designed > to listen on multiple sockets, it is annoying because it requires > dealing with IPv4-mapped addresses in logs and configuration files > unless the program takes care to convert them to IPv4 addresses. > > I propose that netbase will create on new installations a file in > /etc/sysctl.d/ containing net.ipv6.bindv6only=1. > > > > [1] http://en.wikipedia.org/wiki/IPv6#IPv4_mapped_addresses > > [2] http://tools.ietf.org/html/rfc3493#section-5.3 > > [3] http://books.google.com/books?id=UuIqKlWVaKcC&lpg=PA118&ots=2XZWUqI0au&pg=PA118#v=onepage > > -- > ciao, > Marco > Thus you should report a bug against Tomcat. Also you can replace "net.ipv6.bindv6only=1" with "net.ipv6.bindv6only=0" in your /etc/sysctl.d/ as a temporary solution. On Mon, Dec 21, 2009 at 2:04 AM, Alan Chandler <alan(a)chandlerfamily.org.uk> wrote: > Alan Chandler wrote: >> >> I have just upgraded my server from lenny to unstable and I now find a >> tomcat application server backed has stopped working (front end on another >> machine has the jk_mod installed and links through using ajp on port 8009). >> >> Using netstat --listening on the tomcat machine I find that tomcat is only >> listening with the ip6 protocol and not ip4. Net result it has stopped >> working. >> >> I haven't changed anything during the upgrade, and I can't see anywhere >> where it is defined what protocols tomcat is listening (at least there >> doesn't appear to be anything in server.xml). >> >> How can I fix this so that tomcat listens using ip4 and not ip6? >> > > > Netstat output > > owl:/var/log/tomcat5.5# netstat --listening > Active Internet connections (only servers) > Proto Recv-Q Send-Q Local Address Foreign Address State > tcp 0 0 *:rsync *:* LISTEN > tcp 0 0 localhost:mysql *:* LISTEN > tcp 0 0 *:6543 *:* LISTEN > tcp 0 0 *:6544 *:* LISTEN > tcp 0 0 *:ssh *:* LISTEN > tcp 0 0 localhost:ipp *:* LISTEN > tcp 0 0 localhost:postgresql *:* LISTEN > tcp6 0 0 [::]:8009 [::]:* LISTEN > tcp6 0 0 [::]:rsync [::]:* LISTEN > tcp6 0 0 [::]:www [::]:* LISTEN > tcp6 0 0 [::]:auth [::]:* LISTEN > tcp6 0 0 [::]:8180 [::]:* LISTEN > tcp6 0 0 [::]:ssh [::]:* LISTEN > tcp6 0 0 localhost:ipp [::]:* LISTEN > tcp6 0 0 localhost:postgresql [::]:* LISTEN > tcp6 0 0 [::]:https [::]:* LISTEN > udp 0 0 *:mdns *:* > udp 0 0 255.255.255.255:1900 *:* > udp 0 0 239.255.255.250:1900 *:* > udp 0 0 *:ipp *:* > udp 0 0 *:ntp *:* > udp 0 0 *:33154 *:* > udp 0 0 *:6549 *:* > udp 0 0 *:323 *:* > udp 0 0 *:bootpc *:* > udp6 0 0 [::]:40262 [::]:* > udp6 0 0 [::]:mdns [::]:* > > > The strange thing here is that apache is listening only on the ip6 port 80, > but it is seeing requests from my browser > > -- > Alan Chandler > http://www.chandlerfamily.org.uk > > > -- > To UNSUBSCRIBE, email to debian-user-REQUEST(a)lists.debian.org with a subject > of "unsubscribe". Trouble? Contact listmaster(a)lists.debian.org > > -- To UNSUBSCRIBE, email to debian-user-REQUEST(a)lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster(a)lists.debian.org
From: Alan Chandler on 21 Dec 2009 05:30 Alexey Salmin wrote: > I think it's related to discussion in debian-devel: .... > > Thus you should report a bug against Tomcat. Also you can replace > "net.ipv6.bindv6only=1" with "net.ipv6.bindv6only=0" in your > /etc/sysctl.d/ as a temporary solution. Thank you for this. I had actually heard from the Tomcat mailing list that a work around was to specify address="0.0.0.0" in the connector piece of server.xml, and I had done that HOWEVER, I was having problems then with the application connecting to the backend database. I could see that postgresql was listening on the ipv4 ports so didn't think this was the issue. But when I changed the net.ipv6.bindv6only to 0 my application magically worked again. My thoughts are that there is some interaction with libcommons-dbcp-java, so I think there might be a problem there. -- Alan Chandler http://www.chandlerfamily.org.uk -- To UNSUBSCRIBE, email to debian-user-REQUEST(a)lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster(a)lists.debian.org
|
Pages: 1 Prev: Backlight bug on Acer Aspire 7720 Next: USB disk shows up late at boot |