The following reply was made to PR mod_proxy/2731; it has been noted by GNATS.
From: Marc Slemko <[EMAIL PROTECTED]>
To: Apache bugs database <[EMAIL PROTECTED]>
Cc: Subject: Re: mod_proxy/2731: Proxy server process using incorrect IP
intermittently when accessing other virtual servers. (fwd)
Date: Tue, 20 Oct 1998 00:14:22 -0700 (PDT)
---------- Forwarded message ----------
Date: Wed, 29 Jul 1998 10:34:11 -0500
From: John Stewart <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: Re: mod_proxy/2731: Proxy server process using incorrect IP
intermittently when accessing other virtual servers.
I appreciate your response, and this is not a critical problem, but with all
due respect, I believe you are wrong. This is an Apache/Solaris issue, not a
Solaris issue alone.
As I mentioned in my bug report, no other process uses any of these
interfaces, including the SOCKs proxy I have on the machine, and any other
network client. Additionally, the Apache proxy server itself *does not*
exhibit this behavior when accessing web servers on other machines. It is only
when accessing another virtual interface on the Apache process that this
happens.
Also, the routes out the other interfaces do not exist. Here is my ifconfig -a:
# ifconfig -a
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
inet 127.0.0.1 netmask ff000000
elx0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 204.95.85.90 netmask ffffff00 broadcast 204.95.85.255
ether 0:60:8:2b:21:1b
elx0:1: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 204.95.85.91 netmask ffffff00 broadcast 204.95.85.255
elx0:2: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 204.95.85.92 netmask ffffff00 broadcast 204.95.85.255
elx0:3: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 204.95.85.93 netmask ffffff00 broadcast 204.95.85.255
elx0:4: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 204.95.85.89 netmask ffffff00 broadcast 204.95.85.255
And here is my netstat -r:
# netstat -r
Routing Table:
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
204.95.85.0 goat.heurikon.com U 2 67 elx0
default cisco1.heurikon.com UG 0 14671
localhost.heurikon.com localhost.heurikon.com UH 0 2 lo0
As far as outgoing packets are concerned, those interfaces aren't used at all
by Solaris (as I've said, this is true for all processes other than Apache).
As for the ip_enable_group_ifs option for /dev/ip, it was on. I set it to 0,
and then the behavior worsened. According to the access log of the virtual
server (www.johnstewart.com) I was trying to load, the proxy requests looked
like they came from www.johnstewart.com instead of goat.heurikon.com. They
should have all looked like goat.heurikon.com (at least it was previously
intermittently correct).
Moreover, even with the ip_enable_group_ifs feature disabled, accessing
external web servers exhibits the correct behavior. The proxy server sends
requests out the goat.heurikon.com interface.
This is definitely not just a Solaris issue, but one exhibited by Apache alone
under Solaris. Further, it is only an issue going to a different virtual
server using the proxy server. As I've said, all other network processes are
working correctly.
If this problem is not fixed, it is not a big deal. It's more a curiousity
than a real issue. However, please do not close the case as it is, in my
opinion, clearly a reproducible bug.
thanks
John Stewart
In message <[EMAIL PROTECTED]>, [EMAIL PROTECTED] write
s:
>Synopsis: Proxy server process using incorrect IP intermittently when accessin
>g other virtual servers.
>
>State-Changed-From-To: open-closed
>State-Changed-By: marc
>State-Changed-When: Tue Jul 28 22:33:15 PDT 1998
>State-Changed-Why:
>This is related completely to your OS; Apache does not
>specify any source address for the connections, but lets
> the OS pick the one it wants to. That is the correct thing
>for Apache to do.
>
>It is not unexpected that when connecting to another interface
>on the same machine the OS should pick that address as the
>source. There have been some issues with Solaris 2.6 and
>picking which address to use, and I think there is a ndd
>setting that can tune it, but I'm not sure what it is offhand.
>
>Maybe ip_enable_group_ifs, and there may be a patch or two
>related to it. 2.6 attempts to "load balance" traffic
>to interfaces on the same subnet by randomly picking a source
>address.
>