Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I would like to connect (bridge) two networks (ppp0 and eth2). Normally you would do this with brctl but one of the network-interface is a ppp-device so it won't work (ppp can't transport ppp-frames). What I could do, is enable ip-forwarding but that is not enough as I want traffic from that ppp-device only go to eth2 and vice versa. NAT is fine. Another problem is that as far as I know you cannot push routing information to ppp-clients? Any help is appreciated! (solutions that work with windows/mac/android clients would be nice but not absolutely required)

share|improve this question
    
so i would like to bridge on ip level –  Folkert van Heusden Jul 21 '12 at 9:04
add comment

1 Answer

You can't bridge ethernet and PPP because they are different layer two protocols, and incompatible ones at that.

  • PPP, as it's name implies is a direct point to point link. It doesn't know the concept of multiple hosts on the local link.
  • Ethernet on the other hand can have any number (well, lots) of other hosts on the local link.

Reconciling this directly is impossible.

However, there is something else you can do: encapsulate the ethernet packets using an IP-in-IP tunnel between the two PPP endpoints then use brctl to bridge the ethernet and tunnel interfaces.

Read more in the IP-in-IP HOWTO.

share|improve this answer
    
Note that if security is a concern use a VPN tunnel instead. –  bahamat Jul 21 '12 at 1:34
    
but would it be possible to bridge on ip level? –  Folkert van Heusden Jul 21 '12 at 9:04
    
No. IP is layer 3. Bridging is at layer 2. –  bahamat Jul 21 '12 at 21:03
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.