분산 / 메시 형 / P2P VPN이 있습니까? 다른 예측할

개인 VPN을 사용하여 여러 장치를 연결하므로 항상 인터넷에 연결되어있는 한 항상 액세스 가능한 네트워크에서 고정 IP 주소를 가질 수 있습니다. 내 장치는 다른 예측할 수없는 네트워크 (4G 네트워크 휴대폰, 대학의 랩톱, 가정의 가정용 서버)에서 이동 중일 수 있으며, 장치에 연결해야하는 백업 서버가 있고 때로는 , 나도 그래야한다).

또한 동기화와 같은 것을 설치하는 것에 대해 생각하고 있습니다.

또한 게으르고 스마트 폰에서 홈 서버에서 재생되는 음악을 재생 / 일시 중지하고 싶습니다. 동일한 네트워크에 있지 않을 수도 있습니다 (항상 그렇지는 않습니다).

이것은 하나의 OpenVPN 서버와 openvpn모든 장치에서 실행 되는 클라이언트 가 있음을 의미 합니다. 이들은 모두 서버에 연결되며 두 노드의 트래픽은 서버를 통과해야합니다. 서버는 비교적 멀리 떨어져 있으며 처리량이 매우 제한적입니다. 이는 대기 시간과 속도 저하를 의미합니다. “일시 정지”버튼을 누르면 실제로 음악을 일시 정지하는 데 최대 10 초가 걸릴 수 있습니다. 두 노드가 실제로 동일한 LAN에 있더라도 (VPN을 통해 통신하기 때문에) Meh.

이상적으로는 노드 간 최단 경로를 찾아 직접 연결을 시도 할 수있는 VPN을 만드는 방법이 있어야합니다. Skype가 슈퍼 노드와 작동하는 방식과 같은 것이 있습니까?

서버가 여기에서 멀리 떨어져있는 동안 노드 중 하나는 공용 IP 주소를 가지며 다른 노드에 의해 도달 될 수 있습니다. 서버 자체가 아닌 경우에도 서버에서 작동 할 수 있지만 일부 노드 에는 더 나은 선택입니다 .

클라이언트와 서버를 모두 실행하고 해당 노드에서 브리지로 연결하기 위해 비슷한 것을 할 수 있다고 생각하지만 우아하지는 않습니다. 해킹적이고 PKI를 복잡하게 만들고 VPN을 분할합니다. 나는 그것을 좋아하지 않는다.

통신의 보안을 실제로 보장하지 않는 PPTP와 같은 간단한 VPN을 사용할 수는 있지만 노드 간 연결을 암호화하도록 Bacula를 구성하지 않아도되므로 VPN 내부에서 트래픽이 일반화됩니다. VPN 캡슐화는 유일한 보안이므로 약해서는 안됩니다. 그러나 기밀없이 “메쉬”와 같은 VPN을 해결하는 것은 이미 좋은 출발이 될 것입니다. 트래픽이 SSL / TLS를 통과하기 시작했는지 확인합니다.

이것은 다른 사람이 가지고있을 수도 있고 지금까지 해결 된 문제처럼 보입니다. 이와 같은 것이 있습니까?

이 방법을 잘못보고있을 가능성도 있지만 지금까지는 내가 어디에 있든 상관없이 항상 내 장치 중 하나에 원격으로 연결할 수 있도록하는 가장 좋은 방법처럼 보입니다.



답변

그것이 당신의 요구를 완전히 충족시키는 지 확실하지 않지만, 아마도 tinc를보아야 할 것입니다 : http://www.tinc-vpn.org/ . 설명 한 것처럼 중앙 서버에서 오케스트레이션 된 메쉬 네트워크와 매우 일치하지만 로컬 네트워크에서 피어를 찾는 데 성공할지 확실하지 않습니다.


답변

내가 찾아서 사용한 가장 쉬운 메쉬 VPN은 PeerVPN ( http://www.peervpn.net/ )입니다.

PeerVPN 기능

  • TAP 장치를 사용한 이더넷 터널링 지원
  • IPv6 지원.
  • 풀 메시 네트워크 토폴로지.
  • 추가 설정없이 방화벽과 NAT를 통해 터널을 자동으로 구축합니다 (예 : 포트 전달).
  • 공유 키 암호화 및 인증 지원

구성은 간단합니다. 편집하는 하나의 구성 파일과 기본 메쉬 VPN의 경우 6 개의 설정 만 지정하면 PeerVPN 튜토리얼을 참조 할 수 있습니다 (1 페이지). http://www.peervpn.net/tutorial/

PSK 암호화 / 인증 키는 최대 512 비트 (64 바이트) 일 수 있습니다.

지금까지 여러 원격 서버에서 peervpn을 설정했으며 매우 잘 작동합니다. 또한 다른 메쉬 VPN 구현에서 발생할 수 있으므로 “슈퍼 노드”가 필요하지 않습니다.

peervpn의 노드는 구성을 변경할 필요없이 VPN에 새로 추가 된 노드에 대해 자동으로 학습합니다. 노드 간 트래픽도 직접적이며 일부 중앙 VPN 허브를 통하지 않습니다.

참고 : 기본 peervpn.conf 파일을 읽고 “사용할 수있는”다양한 옵션에 대해 알아보십시오. 그러나 내가 언급 한 기본 메쉬 VPN의 경우 6 옵션 (vpn, PSK, 로컬 터널 끝점 IP 주소, 인터페이스 “이름”, Linux 시스템에서 보거나 사용하려는 인터페이스 및 포트 번호 만 설정하면됩니다) “그것”vpn … 서버에서 여러 개의 독립적 인 VPN을 위해 peervpn을 사용할 수 있습니다)


답변

몇 년 전에 똑같은 문제가있었습니다. 나는 ~ 30 개의 사무실이 모두 직접 통신 할 수 있어야했지만 ‘허브 앤 스포크’구성으로 설정되었습니다. n x (n-1)/2사무실에서 OpenVPN으로 연결 수 를 자동으로 생성하는 Python 도구를 작성했습니다 . 나중에 한 사무실은 다른 사무실을 볼 수 있지만 본사는 볼 수없는 기괴한 Comcast 문제 이후 사이트 간 RIP 라우팅을 지원했습니다. 마지막으로 링크 IP에 대해 역방향 DNS를 자동 생성하는 기능과 패키지를 각 라우터로 푸시하는 기능을 추가했습니다.

OpenMesher를 살펴보십시오 . 오늘 아침에 나는 다가오는 프로젝트를 위해 먼지를 뿌리기로 결정했습니다. 잘하면 그것은 당신이 원하는 것을합니다. 그렇지 않은 경우 언제든지 문제를 제출하면 도와 드리겠습니다.