Bjørn Mork wrote:
> Gary <[EMAIL PROTECTED]> writes:
>
>   
>> I will be very interested to have a way to recover the network if
>> someone find the root cause but it seems I reach my technical limit.
>> Of course if anyone need more information about my configuration I am
>> still in the thread.
>>     
>
> I was able to recreate your problem, and to recover from it by doing
>
> # ifconfig eth0 0
> # ifconfig eth0 192.168.240.195 netmask 255.255.248.0
> # route add default gw 192.168.240.1
>
> from the non-working situation.
>
> I suspect that the problem might be this code in net/ipv4/devinet.c ,
> which sets ifa_scope to RT_SCOPE_HOST if you configure a loopback
> address (127/8) on any interface.  I guess it's there to protect us from
> sending packets with a loopback source address, which woulnd't look too
> good:
>
> static int inet_set_ifa(struct net_device *dev, struct in_ifaddr *ifa)
> {
>       struct in_device *in_dev = __in_dev_get_rtnl(dev);
>
>       ASSERT_RTNL();
>
>       if (!in_dev) {
>               inet_free_ifa(ifa);
>               return -ENOBUFS;
>       }
>       ipv4_devconf_setall(in_dev);
>       if (ifa->ifa_dev != in_dev) {
>               BUG_TRAP(!ifa->ifa_dev);
>               in_dev_hold(in_dev);
>               ifa->ifa_dev = in_dev;
>       }
>       if (LOOPBACK(ifa->ifa_local))
>               ifa->ifa_scope = RT_SCOPE_HOST;
>       return inet_insert_ifa(ifa);
> }
>
>
>
> The real problem is that there's never anything resetting this scope if
> you change the address later.  The attached patch fixes this.
>
>   
Can you send it to net-dev also?
> Bjørn
>
>   

Regards,
Varun
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to