| Tunel VPN P2P bez adresów publicznych - projekt N2N | 
| hermes-80 | Dodano 08-01-2013 22:52 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | Jak każdy z nas wie mamy wiele rodzai tuneli VPN - nie jest problemem stworzyć tunel VPN gdy mamy do dyspozycji chociaż jeden adres publiczny. 
Ale co zrobić gdy żadna lokalizacja nie udostępnia nam adresu publicznego, a koniecznie chcemy połączyć obie lokalizacje? 
Inspirując się opisem naszego kolegi: http://eko.one.pl/?p=openwrt-n2n  zapragnąłem by takie coś odpalić na Tomato. 
Korzystając z projektu N2N http://www.ntop.org/products/n2n/  możemy sobie z tym poradzić.
 
Czym jest projekt N2N - jak wiemy klasyczny tunel VPN tworzymy za pomocą Klienta i Serwera przy projekcie N2N mamy udostępniony publiczny bezpłatny serwer pośredniczący pod adresem: 88.86.108.50  
- czyli odpada nam odpalanie serwera na publicznym IP i o to właśnie nam chodziło.
 
Do dzieła: 
Musimy mieć zainstalowane Optware: http://openlinksys.info/forum/viewthr...ad_id=7607 
Instalacja:
 [root@WNR3500 root]$ ipkg update[root@WNR3500 root]$ ipkg install n2n
 Aplikacja instaluje się w lokalizacji: /opt/sbin, a paczka zawiera:
 klienta - edge (będziemy z niego korzystać)
 serwer - supernode (możemy odpalić swój własny węzeł pośredniczący jeśli mamy IP publiczne)
 Jest to pakiet wersji v2 - lepsze zabezpieczenia: http://linux.die.net/man/7/n2n_v2, serwer nasłuc****e na porcie 86
 
 Omówię dwa przypadki:
 
 1. router ---- klient PC win32 (przetestowane)
 2. router ---- router (nieprzetestowane)
 
 1.
 ---------- Router ----------
 Aby aplikacja zadziałała musimy najpierw załadować moduł tun:
 
 
 
 [root@WNR3500 root]$ insmod tun
 Odpalamy klienta:
 
 
 
 [root@WNR3500 root]$ /opt/sbin/edge -d n2n -a 10.10.10.1 -c "nazwa_własnej_sieci" -k "hasło_do_sieci" -l 88.86.108.50:86
 (jest on odpalany od razu jako deamon - jeśli nie chcemy aby odpalał się jako deamon z jakiś powodów to musimy dodać parametr -f wtedy widzimy co wypluwa w konsoli)
 
 parametry:
 -d: nazwa interfejsu w systemie
 -a: IP interfejsu w systemie
 -c: nazwa własnej sieci
 -k: hasło do sieci
 -l: publiczny serwer pośredniczący (supernode)
 
 Aby sprawdzić poprawność połączenia się z serwerem:
 
 
 
 [root@WNR3500 root]$ ifconfig 
 powinien nam się ukazać interfejs:
 
 
 
 n2n     Link encap:Ethernet  HWaddr 00:FF:09:2F:DB:92inet addr:10.10.10.1  Bcast:10.10.10.255  Mask:255.255.255.0
 UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
 RX packets:1523 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1441 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:500
 RX bytes:152230 (148.6 KiB)  TX bytes:140537 (137.2 KiB)
 Do firewalla dodajemy:
 
 
 Cytat iptables -I OUTPUT -o n2n -j ACCEPTiptables -I INPUT -i n2n -j ACCEPT
 iptables -I FORWARD -o n2n -j ACCEPT
 iptables -I FORWARD -i n2n -j ACCEPT
-----------------------------------------------------------------------------
 ---------- PC ----------
 Teraz przechodzimy do instalacji aplikacji na win32 (sprawdzone na XP Pro 32bit SP3)
 
 Przyzwyczajeni do okienek instalujemy sobie: GUI http://sourceforge.net/projects/n2ned...0GUI/v1.0/
 Jeśli nie mamy zainstalowanego to instalujemy - Microsoft Visual C++ 2008 Redistributable Package (x86): http://www.microsoft.com/en-us/downlo...px?id=5582
 
 Instalator domyślnie instaluje nam:
 - program konsolowy edge.exe
 - GUI
 - wirtualną kartę sieciową TAP
 
 C:\Program Files\N2N Edge GUI\edge.exe - programy konsolowe
 C:\Program Files\N2N Edge GUI\drv - sterowniki wirtualnej karty sieciowej TAP
 
 Instalator z automatu instaluje nam wirtualną kartę sieciową TAP ale gdyby tak się nie stało to sami ręcznie zabieramy się za instalacje:
 
 
 Cytat Panel sterowania\Dodaj sprzęt\Dalej\Tak urządzenie zostało już podłączone - Dalej\Dodaj nowe urządzenie sprzętowe (na końcu listy) - Dalej\Zainstaluj sprzęt, który wybiorę ręcznie z listy - Dalej\Karty sieciowe - Dalej\Z dysku\{C:\Program Files\N2N Edge GUI\drv} - OemWin2k.inf\TAP-Win32 Adapter - Dalej\Dalej ...
 Po zainstalowaniu w menadżerze urządzeń powinna być nowa karta sieciowa o nazwie: TAP-Win32 Adapter
 
 Odpalamy i konfigurujemy:
 
 
  
 -----------------------------------------------------------------------------
 Po tych zabiegach komunikacja:
 ping 10.10.10.1 z PC ---> PC TAP (10.10.10.2) --- internet --- n2n (10.10.10.1) router
 
 
 Cytat Odpowiedź z 10.10.10.1: bajtów=32 czas=67ms TTL=64Odpowiedź z 10.10.10.1: bajtów=32 czas=67ms TTL=64
 Odpowiedź z 10.10.10.1: bajtów=32 czas=68ms TTL=64
 Odpowiedź z 10.10.10.1: bajtów=32 czas=63ms TTL=64
 ping 10.10.10.2 z routera ---> router n2n (10.10.10.1) --- internet --- TAP (10.10.10.2) PC
 
 
 Cytat 64 bytes from 10.10.10.2: seq=766 ttl=128 time=64.392 ms64 bytes from 10.10.10.2: seq=767 ttl=128 time=63.935 ms
 64 bytes from 10.10.10.2: seq=768 ttl=128 time=67.518 ms
 64 bytes from 10.10.10.2: seq=769 ttl=128 time=66.617 ms
 
Zasada jest prosta:
 nazwa_własnej_sieci musi być identyczna na wszystkich klientach
 hasło_do_sieci również musi być identyczne na klientach podłączanych do serwera.
 -a 10.10.10.1 IP interfejsu różne na klientach z tej samej podsieci.
 
 2.
 Połączenie miedzy routerami sprowadza się do wykonania tej czynności na obu zmieniając tylko parametr -a 10.10.10.1
 
 ---------- 1 Router ----------
 Instalacja:
 
 
 
 [root@WNR3500 root]$ ipkg update[root@WNR3500 root]$ ipkg install n2n
 Aby aplikacja zadziałała musimy najpierw załadować moduł tun:
 
 
 
 [root@WNR3500 root]$ insmod tun
 Odpalamy klienta:
 
 
 
 [root@WNR3500 root]$ /opt/sbin/edge -d n2n -a 10.10.10.1 -c "nazwa_własnej_sieci" -k "hasło_do_sieci" -l 88.86.108.50:86
 Aby sprawdzić poprawność połączenia się z serwerem:
 
 
 
 [root@WNR3500 root]$ ifconfig 
 powinien nam się ukazać interfejs:
 
 
 
 n2n      Link encap:Ethernet  HWaddr 00:FF:09:2F:DB:92inet addr:10.10.10.1  Bcast:10.10.10.255  Mask:255.255.255.0
 UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
 RX packets:1523 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1441 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:500
 RX bytes:152230 (148.6 KiB)  TX bytes:140537 (137.2 KiB)
 Do firewalla dodajemy:
 
 
 Cytat iptables -I OUTPUT -o n2n -j ACCEPTiptables -I INPUT -i n2n -j ACCEPT
 iptables -I FORWARD -o n2n -j ACCEPT
 iptables -I FORWARD -i n2n -j ACCEPT
-----------------------------------------------------------------------------
 ---------- 2 Router ----------
 Instalacja:
 
 
 
 [root@WNR3500 root]$ ipkg update[root@WNR3500 root]$ ipkg install n2n
 Aby aplikacja zadziałała musimy najpierw załadować moduł tun:
 
 
 
 [root@WNR3500 root]$ insmod tun
 Odpalamy klienta:
 
 
 
 [root@WNR3500 root]$ /opt/sbin/edge -d n2n -a 10.10.10.2 -c "nazwa_własnej_sieci" -k "hasło_do_sieci" -l 88.86.108.50:86
 Aby sprawdzić poprawność połączenia się z serwerem:
 
 
 
 [root@WNR3500 root]$ ifconfig 
 powinien nam się ukazać interfejs:
 
 
 n2n     Link encap:Ethernet  HWaddr 00:FF:09:2F:DB:89
 inet addr:10.10.10.2  Bcast:10.10.10.255  Mask:255.255.255.0
 UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
 RX packets:1523 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1441 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:500
 RX bytes:152230 (148.6 KiB)  TX bytes:140537 (137.2 KiB)
 Do firewalla dodajemy:
 
 
 Cytat iptables -I OUTPUT -o n2n -j ACCEPTiptables -I INPUT -i n2n -j ACCEPT
 iptables -I FORWARD -o n2n -j ACCEPT
 iptables -I FORWARD -i n2n -j ACCEPT
-----------------------------------------------------------------------------
 
 Jeśli popełniłem jakieś nieścisłości, błędy i niejasności to wybaczcie.
 Edytowany przez hermes-80 dnia 26-01-2013 11:19
 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| shibby | Dodano 11-01-2013 22:56 | 
|  
 SysOp
 
  
 
 Posty: 17165
 Dołączył: 15/01/2009 20:30
 
 
 | Cytat Musimy mieć zainstalowane Optware
 I dodane moje repozytorium, gdyz pakiet n2n nie wystepuje w oficjalnym repozytorium :-)
 
 Router: Unifi Cloud Gateway FiberSwitch: Unifi USW-Lite-16-PoE
 Switch: Unifi USW-Flex-Mini - szt. 2
 Wi-Fi: Unifi U6-Lite - szt. 2
 Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 4x 2TB SSD
 VM #1: Synology SA6400
 VM #2: Debian, WWW
 VM #3:  Home Assistant OS
 | 
|  | 
 
 | 
|  | 
| hermes-80 | Dodano 11-01-2013 22:59 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | Dokładnie - gdyby był to bym nie prosił o kompilacje  . 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| kotles | Dodano 01-05-2013 20:48 | 
|  
 User
 
  
 
 Posty: 1
 Dołączył: 01/05/2013 20:46
 
 
 | a czy ktos cos wie na temat wersji na androida? | 
|  | 
 
 | 
|  | 
| hermes-80 | Dodano 21-06-2014 10:08 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | https://play.google.com/store/apps/de...ug.n2n_gui to chyba wersja na andka - nie testowane. 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| cross | Dodano 11-08-2014 19:52 | 
|  
 User
 
  
 
 Posty: 62
 Dołączył: 09/08/2014 02:39
 
 
 | Czyli rozumiem, że n2n jest pomocne gdy obie sieci są na dynamicznych adresach zewnętrznych i chcemy je połączyć?? 
 Bo VPN może łączyć klient-serwer albo serwer-serwer czyli dwie sieci połączone jakieś ze sobą i udostępniające zasoby. Muszą być adresy publiczne. Ale co oznacza gdy ktoś nie ma adresu publicznego? Każdy kto ma Internet ma adres publiczny chociaż jeden.
 | 
|  | 
 
 | 
|  | 
| hermes-80 | Dodano 11-08-2014 21:27 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | Adres publiczny na swoim routerze brzegowym bez blokady połączeń przychodzących. Dynamiczny adres IP to całkiem co innego.
 n2n działa na zasadzie klient -- (serwer pośredniczący) -- klient (coś jak TeamViewer) na publicznych serwerach pośredniczących jest niewielka wydajność.
 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| cross | Dodano 12-08-2014 00:02 | 
|  
 User
 
  
 
 Posty: 62
 Dołączył: 09/08/2014 02:39
 
 
 | A czyli serwer pośredniczący przekazuje zestawione połączenie między dwoma hostami (p2p) w odrębnych węzłach sieciowych. | 
|  | 
 
 | 
|  | 
| hermes-80 | Dodano 12-08-2014 11:05 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | Tak - jest węzłem łączącym tunel pomiędzy klientami PtP, PtM - wydajność zależny od łącza serwera UP i DL i jego wydajności HW, więc na publicznych nadaje się to do administracji siecią, a nie streamowania czegoś. 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| cross | Dodano 12-08-2014 13:57 | 
|  
 User
 
  
 
 Posty: 62
 Dołączył: 09/08/2014 02:39
 
 
 | To nie lepiej pominąć to i połączyć dwie sieci serwer-serwer? | 
|  | 
 
 | 
|  | 
| hermes-80 | Dodano 12-08-2014 14:00 | 
|  
 VIP
 
  
 
 Posty: 3682
 Dołączył: 21/04/2009 11:24
 
 
 | Chyba nie rozumiesz podstawowej koncepcji tego projektu! Jak możesz połączyć coś serwer---serwer skoro nie masz publicznych IP na żadnym stanowisku?
 
 ===============================================================Netgear WNR3500L v1
 Podziękowania dla administracji Openlinksys.info!
 | 
|  | 
 
 | 
|  | 
| cross | Dodano 12-08-2014 14:20 | 
|  
 User
 
  
 
 Posty: 62
 Dołączył: 09/08/2014 02:39
 
 
 | Na stanowisku nie ale cały węzeł jest na publicznym adresie. 
 Chodzi o spięcie dwóch węzłów (LAN1 + LAN2) oba lany mają wyjściowe publiczne IP. Rozumiem, że ideą n2n jest łączenie elementu węzła z innym elementem innego węzła przez pośredniczący serwer gdzie tak naprawdę oba elementy się spotykają i pośredniczą w przekazywaniu informacjami. Ale można je spiąć , spinając dwie struktury ich sieci.
 | 
|  | 
 
 | 
|  | 
| domestos007 | Dodano 11-03-2015 14:12 | 
|  
 User
 
  
 
 Posty: 161
 Dołączył: 26/04/2012 15:36
 
 
 | Czy jest szansa na kompilację n2n pod ARM. | 
|  | 
 
 | 
|  | 
| ppi | Dodano 26-09-2015 12:39 | 
|  
 User
 
  
 
 Posty: 30
 Dołączył: 24/04/2006 21:47
 
 
 | Chciałem przyłączyć się do pytania, czy jest szansa na n2n w oficjalnych obrazach? | 
|  | 
 
 | 
|  | 
| juro-21 | Dodano 19-03-2018 12:44 | 
|  
 User
 
  
 
 Posty: 5
 Dołączył: 15/06/2007 15:53
 
 
 | HELLO. Uruchomiłem własne Supernode na dynamicznym IP.
 Testowałem połączenie router 1 do router 2 plus komp winxp
 Edge uruchomiony z parametrem -b (dla dynamicznego IP) ,
 działa bardzo poprawnie.
 Podglądowa konfiguracja:
 router 1 edge IP 192.166.1.10
 router 2 edge IP 192.166.1.11
 komp  edge IP 192.166.1.12
 i tak można  z kompa połączyć się z n.p http://192.166.1.10:8888
 ( to n.p oscam) działa port 21 , 22, 23 itd
 Tu mam pytanie :
 Wykonuje połączenie http://192.166.1.10 to panel www routera 1 , niestety nie działa, itd.
 Nie mam pomysłu na to . gdy dla edge użyje IP identycznego jak dla LAN to działa.
 Przykład router 1:
 IP LAN 192.167.1.10 , WAN 192.168.1.10 , N2N IP 192.166.1.10
 nie działa .
 Proszę o info.
 
 dodat.info
 czeskie supernode  212.96.177.13:86
 Edytowany przez juro-21 dnia 19-03-2018 12:58
 | 
|  | 
 
 |