[Bridge] Ubuntu: network bridging between wireless and wired connection fails

Nicolas de Pesloüan nicolas.2p.debian at free.fr
Sun May 10 08:39:12 PDT 2009


Jochen Hebbrecht wrote:
> I had a "chat" with somebody of the support site of Linksys. The WRT54GS 
> enables WDS. So we can say this is my problem. My wifi adapter is a WMP54G

OK. Until the driver for this adapter support WDS, it would be 
impossible to bridge between Ethernet and Wifi.

>> If that fail, I think we have two options :
>>
>> - Try to setup a very special bridge configuration, with some sort of 
>> masquerading of the MAC address. This would require at least to use 
>> ebtables to replace the source MAC address in the header (and in the 
>> payload for ARP) of packets sent on the wifi interface, to route 
>> packets in the server, to stop the server from sending ICMP redirect 
>> in the wifi interface and to setup a proxy_dhcp on the server. It 
>> would be hard to setup, hard to debug and impossible to maintain... 
>> Probably not a good idea... Funny to try, but not a good target.
> This really sounds like Chinese in my ears :-D

It is ! :-D

 From a theoretical point of view, it is possible to build such a setup, 
but really, you should keep away from that. I didn't tested it and won't 
have enough time to support you on this way.

>> - Setup a simple router configuration on the server, using another 
>> private subnet on location B. Using a simple NAT/Masquerading 
>> configuration (with iptables), it could be possible to hide the subnet 
>> of location B from location A, but still allow access to the printer 
>> of location B from location A and access to location A and to Internet 
>> from location B. If you don't have a really good reason to stick to 
>> bridge (like using a non-IP protocol), I suggest you try this.

> I was thinking on this situation too. But how will be somebody in subnet 
> A able to reach someone of subnet B? We are gonna have to change the 
> routing tables on the client side too?

Yes, you are right.

If the network you are talking about is your home network (not a company 
network), why don't you create a different subnet for both location 
(let's say 192.168.0.0/24 and 192.168.1.0/24) ? You just need to add a 
static route to the subnet of location B, through UBUNTU SERVER, in the 
main router at location A. In location B, you need to setup every hosts 
to use UBUNTU SERVER as the default route.

If you don't have access to the routing table of the main router in 
location A, you can try to run a ripd daemon in UBUNTU SERVER, to inform 
the main router of location A that UBUNTU SERVER is a router to the 
subnet of location B. You can find ripd in the quagga package, for 
example. (The documentation is in the quagga-doc package).

It would be by far the simplest way to achieve your goal.

	Nicolas.


More information about the Bridge mailing list