On Tue, 18 Oct 2005 11:18:07 +0200 Loic Minier <[EMAIL PROTECTED]> wrote:
> The /etc/network/if-up.d/ip script will only change settings *IF* you > set them. "if [ -n "$IF_IP_PROXY_ARP" ]" means that the code will only > run if something is written in IF_IP_PROXY_ARP, that is if you > configured ip_proxy_arp in your interfaces file. let's look at code: if [ -n "$IF_IP_RP_FILTER" ] && [ "$IF_IP_RP_FILTER" -eq "0" ] then echo 0 > /proc/sys/net/ipv4/conf/$IFACE/rp_filter else echo 1 > /proc/sys/net/ipv4/conf/$IFACE/rp_filter fi if $IF_IP_RP_FILTER iz non-zero string, and it also equal to 0, we set rp_filter to 0. if $IF_IP_RP_FILTER iz non-zero string, and it also not equal to 0, we set rp_filter to 1. but. If $IF_IP_RP_FILTER is zero string (not defined), we jump straight to 'else' and set rp_filter to 1. so if you do not specify ip-rp-filter in interface specification, you always get rp_filter=1. > However, please note that rp_filter only makes sense for IP interfaces. > If you don't have any IP address on your interface, I suppose > rp_filter won't work. well, this interface really does not need an ip address, it is added just for convenience. but i like it this way. > > I suggest what /etc/network/if-up.d/ip should act only on vlan interfaces, > > checking them in a manner if-pre-up.d/vlan script does. > > I think that /etc/network/if-up.d/ip applies in general to all people > wanting to use proxy_arp and/or rp_filter. This applies to people with > DMZ or multiple internet connections for example, and these people > don't necessarily use vlans. Hence, I think this script should be in > ifupdown, as the comment points out: > # This should probably go into ifupdown > # But usually only those with lots of interfaces (vlans) need these > > ... but this is a separate problem. maybe this modification can solve this: if [ -n "$IF_IP_RP_FILTER" ] then if [ "$IF_IP_RP_FILTER" -eq "0" ] then echo 0 > /proc/sys/net/ipv4/conf/$IFACE/rp_filter else echo 1 > /proc/sys/net/ipv4/conf/$IFACE/rp_filter fi fi > Could you explain your original problem? I don't think > /etc/network/if-up.d/ip is messing with your "post-up" stanza, could > you please the complete definition of your interface and run: > cat /proc/sys/net/ipv4/conf/sputnik/rp_filter > after ifuping your interface? sorry, i can't mess with whis iface right now, it's on production box. maybe later > Thanks, > > -- > Loïc Minier <[EMAIL PROTECTED]>