Dous emprazamentos con enlaces móbiles teñen o mesmo problema nas dúas direccións: ningún pode aceptar unha conexión IPv4 non solicitada, así que ningún pode facer de servidor nun túnel directo. A arquitectura que funciona coloca un terceiro accesible no medio: cada emprazamento marca cara a fóra e o medio só reenvía o tráfico que aprobas. Ese medio pode ser un encamiñador que operas ti ou un produto que presenta os pares, e non son o mesmo. Os pasos de abaixo están ordenados para que cada un produza proba antes de que o seguinte dependa dela.

Non se pode marcar a ningún dos dous emprazamentos, así que ambos deben marcar cara a fóra

Confirma a restrición antes de deseñar ao seu redor. Se o operador entrega un enderezo privado á interface WAN, ningún redireccionamento de porto no encamiñador do propio emprazamento o fará accesible, porque a tradución ocorre máis arriba. Un enderezo IPv6 público pode existir no mesmo enlace e cambiar o deseño por completo, e por iso a comprobación cobre ambas familias. Anota a resposta por emprazamento, porque os dous raramente teñen restricións idénticas aínda que compartan operador.

O caso móbil habitual vese como un enderezo do rango traducido do operador cunha ruta por defecto a través del. Non é unha avaría que reparar; é a razón pola que existe o concentrador. O que buscas é calquera enderezo ao que un terceiro poida chegar sen que o emprazamento falase primeiro.

Dous comandos responden á pregunta de direccionamento do emprazamento que tes diante. Execútaos no encamiñador do emprazamento, non nun portátil detrás del:

ip -4 addr show scope global
ip -6 addr show scope global

Quen presenta os pares e quen leva os paquetes

Presentación e transporte son traballos separados que os produtos adoitan agrupar sen facer visible a liña. Un mecanismo de encontro axuda a dous pares a atopar un camiño candidato; un relé leva os seus paquetes cando non existe camiño directo. Comprar un servizo que presenta pares non che dá un encamiñador, e esa diferenza decide se o deseño necesita un concentrador sequera.

A travesía ten o seu propio vocabulario, e as palabras describen roles, non garantías. A especificación ICE describe candidatos e comprobacións de conectividade, STUN describe un xeito de aprender sobre a tradución de enderezos, e TURN describe transporte retransmitido para aplicacións que o implementan. Ningún deses mecanismos aparece nunha pasarela convencional porque a apuntaches a un enderezo de descuberta. Verifica a travesía como capacidade do produto e asume relé ata que unha proba demostre o contrario.

Unha ruta por emprazamento, propiedade dun par

O concentrador necesita un túnel por emprazamento, un prefixo LAN distinto detrás de cada un e unha ruta para cada prefixo que nomee o seu dono. No exemplo o concentrador é 10.61.0.1, o emprazamento A é 10.61.0.11 con LAN 10.60.10.0/24, e o emprazamento B é 10.61.0.12 con LAN 10.60.20.0/24. Cada ruta de abaixo apunta ao par que posúe o prefixo, non á interface do túnel:

ip route add 10.60.10.0/24 via 10.61.0.11 dev wg0
ip route add 10.60.20.0/24 via 10.61.0.12 dev wg0
sysctl net.ipv4.ip_forward
ip route get 10.60.20.55 from 10.60.10.77

O reenvío ten que estar activado, ou os paquetes detéñense no concentrador sen ningún erro que sinale a causa. O último comando responde á pregunta real, porque pregunta que camiño tomaría un paquete da LAN do emprazamento A á LAN do emprazamento B coa orixe incluída na consulta. Trata unha consulta que nomea a interface do túnel como proba e unha que cae na ruta por defecto como unha ruta que falta, non como un misterio. Despois restrinxe o tránsito a propósito, porque un concentrador que reenvía entre todos os pares converte dous emprazamentos nunha rede plana e a política de acceso que crías ter deixa de aplicarse.

Decide tamén onde remata o cifrado. Cando o concentrador ten as dúas terminacións do túnel, o operador desa máquina e a súa carga de traballo entran no modelo de confianza e dispoñibilidade, e o seu ancho de banda pasa a formar parte do camiño.

Mantén vivo cada mapeado a través do operador

Cada emprazamento inicia o seu propio túnel e cada un debe manter vivo o mapeado de tradución ou o operador esquéceo. Unha mensaxe de mantemento no lado que inicia conserva ese mapeado entre os apretones de mans. Limita os prefixos permitidos ao enderezo do concentrador e á LAN remota, para que un par comprometido non poida reclamar un prefixo que non posúe:

[Peer]
PublicKey = <hub public key>
Endpoint = 192.0.2.10:51820
AllowedIPs = 10.61.0.1/32, 10.60.20.0/24
PersistentKeepalive = 25

Reflicte o bloque no outro emprazamento co seu propio prefixo remoto, e resiste a tentación de permitir todo o rango do túnel. Un apretón de mans que se detén e retoma desde un porto de orixe novo é a sinatura dun mapeado caducado, e as marcas de tempo do apretón son a proba de que ocorreu. Un intervalo máis curto que o tempo de espera do operador evita a caducidade en lugar de reparala despois. Cando o operador cambia o seu comportamento de tradución, espera que eses tempos cambien con el.

Demostra ambas direccións, logo demostra a recuperación

A verificación ten dirección, así que un ping de A a B demostra a metade do deseño e nada sobre a ruta de volta. Comproba o camiño de resposta coa mesma consulta consciente da orixe no concentrador, e despois repite a proba desde o outro lado. Os apretones de mans novos tamén forman parte da proba, porque un túnel inactivo unha hora pode estar probando un mapeado vello:

wg show wg0 latest-handshakes
ping -c 3 10.60.20.55
traceroute -n 10.60.20.55

Despois proba o fallo que esperas, non o éxito que queres. Reinicia o enlace dun emprazamento e confirma que o túnel volve sen que ningunha persoa toque ningún dos extremos, porque un deseño que necesita un operador tras cada cambio do operador está inacabado. Anota a ruta principal, a alternativa IPv6 cando exista e o comportamento cando o concentrador non estea dispoñible. O concentrador agora forma parte do teu modelo de dispoñibilidade, así que anótao en lugar de descubrilo durante unha caída.

Artigos relacionados