lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 7 Feb 2007 17:56:34 +0100
From:	Ingo Oeser <netdev@...eo.de>
To:	netdev@...r.kernel.org
Subject: Funny Routing change since 2.6.16.x

Dear network gurus,

I used to change the source address on an PPPoE connection by using
these commands:

/sbin/ifconfig ppp0:1 $SRCADDR
/sbin/ip route add default dev ppp0 src $SRCADDR

where SRCADDR is an address in a different network
than the local and peer address for ppp0.

That works fine until Linux 2.6.13.1.

When I use Kernel 2.6.16.32, 2.6.19.2 or 2.6.19.3
this stops working.

Funnily it WORKS, when the machine just has to answer.
It DOESN'T work, when the machine initiates an connection.

I verified that on the receiving side of a ping with tcpdump.

I also verified that "ip route get $OTHER_HOST" would use the route 
with src address  set to "SRCADDR" from above.

I tried using a default route like "ip route add default via $GATEWAY src $SRCADDR",
but that doesn't work either.

I attached the config for the old working kernel and the 2.6.19.3 config
for reference.

We noticed no problems with ethernet alias interfaces.

The (production) machine is a PC doing SNAT, DNAT, MASQUERADE 
and iptables based stateful inspection firewalling. Policy routing is 
compiled in, but not used at all.

If you need the iptables rules anyway, just tell me.

Many thanks and best Regards

Ingo Oeser

View attachment "config-2.6.13.1" of type "text/plain" (25386 bytes)

View attachment "config-2.6.19.3" of type "text/plain" (40729 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ