Invalid 'route change' functioning
Vladimir Grebenschikov
vova at fbsd.ru
Mon Jan 17 07:40:29 PST 2005
В пн, 17/01/2005 в 10:22 -0500, John Barbieri пишет:
> Vladimir Grebenschikov wrote:
>
> >Hi
> >
> >I am try to do following thing - configure another interface with same
> >address on same broadcast segment (but wired) and then change route
> >entry from one interface to another:
> >
> >
> ># ifconfig iwi0
> >iwi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> > inet 192.168.1.111 netmask 0xfffffe00 broadcast 192.168.1.255
> > ether 00:0e:35:03:82:74
> > media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps)
> > status: associated
> > ...
> ># netstat -rn
> >Routing tables
> >
> >Internet:
> >Destination Gateway Flags Refs Use Netif Expire
> >default 192.168.1.1 UGS 0 511183 iwi0
> >127.0.0.1 127.0.0.1 UH 1 626 lo0
> >192.168.0/23 link#3 UC 0 0 iwi0
> >192.168.1.111 127.0.0.1 UGHS 0 0 lo0
> >192.168.1.255 ff:ff:ff:ff:ff:ff UHLWb 0 1 iwi0
> >#
> >
> >All is ok so far, then configure same address on another interface (not wireless):
> >
> ># ifconfig fxp0 192.168.1.111/23
> ># ifconfig fxp0
> >fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> > options=8<VLAN_MTU>
> > inet 192.168.1.111 netmask 0xfffffe00 broadcast 192.168.1.255
> > ether 08:00:46:c8:45:b3
> > media: Ethernet autoselect (100baseTX <full-duplex>)
> > status: active
> >
> >Ok, routing not changed, now I whant to change route entry 192.168.0/23 -> iwi0, to 192.168.0/23 -> fxp0
> >
> ># route change 192.168.0/23 -iface fxp0 -cloning
> >change net 192.168.0: gateway fxp0
> >#
> >
> >looks like ok, but:
> >
> ># netstat -rn
> >Routing tables
> >
> >Internet:
> >Destination Gateway Flags Refs Use Netif Expire
> >default 192.168.1.1 UGS 0 511317 iwi0
> >127.0.0.1 127.0.0.1 UH 1 661 lo0
> >192.168.0/23 link#3 UC 0 0 iwi0
> >192.168.1.111 127.0.0.1 UGHS 0 0 lo0
> >#
> >
> >nothing changed, delete + add works as expected:
> >
> ># route delete 192.168.0/23 && route add 192.168.0/23 -iface fxp0 -cloning
> >delete net 192.168.0
> >add net 192.168.0: gateway fxp0
> ># netstat -rn
> >Routing tables
> >
> >Internet:
> >Destination Gateway Flags Refs Use Netif Expire
> >default 192.168.1.1 UGS 0 511336 iwi0
> >127.0.0.1 127.0.0.1 UH 1 663 lo0
> >192.168.0/23 link#1 UCS 0 0 fxp0
> >192.168.1.111 127.0.0.1 UGHS 0 0 lo0
> >#
> >
> >(default still goes through wireless, as expected)
> >
> >Any ideas what wrong with 'route change' ?
> >
> >
> >
>
> why not do route delete default, down the wireless, then route add
> default 192.168.1.1 (and maybe even throw in an interface tag at the
> same time to make sure)
>
> ive never really had luck with the change command, if i was on the same
> lan as the box, i always just delete the default and re-add it.
Yes, of course, simple case works, but, let's imagine - you have active
connection and you do now want to loose it, if there are no route while
packet sent (between del and add route) - program gets ENETUNREACH and
connection will be closed.
> just my 2 cents worth
--
Vladimir B. Grebenchikov
vova at fbsd.ru
More information about the freebsd-net
mailing list