두 네트워크(ppp0 및 eth2)를 연결(브리지)하고 싶습니다. 일반적으로 brctl을 사용하여 이 작업을 수행하지만 네트워크 인터페이스 중 하나가 ppp 장치이므로 작동하지 않습니다(ppp는 ppp 프레임을 전송할 수 없습니다). 내가 할 수 있는 것은 IP 전달을 활성화하는 것이지만 해당 ppp 장치의 트래픽이 eth2로만 이동하고 그 반대의 경우도 마찬가지이므로 충분하지 않습니다. NAT에는 문제가 없습니다. 또 다른 질문은 내가 아는 한 라우팅 정보를 ppp 클라이언트에 푸시할 수 없다는 것입니다. 도움을 주시면 감사하겠습니다! (windows/mac/android 클라이언트를 위한 솔루션이 있으면 좋지만 반드시 필요한 것은 아닙니다.)
답변1
이더넷과 PPP는 서로 다른 레이어 2 프로토콜이고 호환되지 않기 때문에 브리지할 수 없습니다.
- PPP는 이름에서 알 수 있듯이 직접 지점 간 링크입니다. 로컬 링크에 여러 호스트가 있다는 개념을 인식하지 못합니다.
- 반면에 이더넷은 로컬 링크에 다른 호스트를 얼마든지(아주 많이) 가질 수 있습니다.
이를 직접 조율하는 것은 불가능합니다.
그러나 뭔가가 있습니다기타다음을 수행할 수 있습니다. 두 PPP 끝점 사이에 IP-in-IP 터널을 사용하여 이더넷 패킷을 캡슐화한 다음 이를 사용하여 brctl
이더넷과 터널 인터페이스를 브리지할 수 있습니다.
더 읽어보세요IP-in-IP 가이드.