Dear How-To Geek,
I have a pretty specific problem that I’m hoping there is a pretty specific answer to. I set up a streaming media server on my home network so I could access my media while away from home. I have an application on my phone that allows me to specify the address of the server. So far so good, right? When I’m away, I just start the app up and connect to the server (which is the IP address of my home internet connection).
Now here’s what my problem (and hopeful) solution comes in. When I’m at home and I use the same application, the traffic goes out to the Internet (or at least out to my ISPs servers I suppose) then comes back to my house to connect to the external IP address. I don’t mind a little lag when I’m away from home because the content has to navigate the internet to get to me, but it seems pretty silly to have my phone-to-server requests go out to the internet and back when the source of the traffic is ten feet away from me and connected to my local network.
Obviously I could use another program to connect to the stuff when I’m at my house, but I’d really like to streamline my apps and user experience. There’s no way to specify two servers in the application. Is there anyway to have the network intelligently direct the traffic to the local IP instead of the big old trip it goes on now?
Sincerely,
Local Network Puzzled
La buona notizia è che c'è sicuramente una soluzione semplice al tuo problema. La cattiva notizia è che non tutti i router hanno questa semplice soluzione disponibile. Il termine tecnico per la funzione che stai cercando è un "loopback NAT". NAT è l'acronimo di Network Address Translation; questo meccanismo del router è responsabile della mappatura del traffico verso un indirizzo IP distinto, in modo che, ad esempio, ogni persona della tua famiglia sui singoli tablet, computer e telefoni possa guardare contemporaneamente YouTube senza che i flussi video vengano confusi e consegnati al dispositivo sbagliato.
In condizioni normali (ad es. Quando "NAT loopback" non è disponibile) abbiamo uno scenario identico a quello che hai descritto nella tua email. C'è una risorsa sulla rete locale, ad esempio un server musicale, e si accede a quel server musicale tramite un indirizzo IP diretto, ad esempio 255.255.1.1. Quel serveranche ha un indirizzo locale all'interno della rete, ad esempio 192.168.1.100. Senza la funzione di loopback ogni volta che una persona sulla rete locale accede a quel server dall'indirizzo rivolto in avanti 255.255.1.1 il traffico passa attraverso il gateway sul router, in uscita su Internet (in genere solo verso il nodo più vicino dell'ISP, comunque) ed è quindi reindirizzato alla rete domestica, attraverso il router di nuovo, al server e qualsiasi contenuto l'utente desideri (musica, film, ecc.) viene inviato tramite la rotta inversa. Questo è un modo molto inefficiente di fare cose e introduce una quantità enorme di movimento del traffico al di fuori di quella rete locale che è del tutto inutile.
Pensare allo scenario di rete sopra descritto in termini reali equivale a un dipartimento di un edificio di uffici al decimo piano che sceglie di inviare una lettera a un dipartimento al sesto piano tramite il servizio postale (dove lascerà l'edificio e richiederà più parti per ordinare e spostare).
Quando un router ha funzionalità di loopback, intercetterà intelligentemente quella trasmissione e la reindirizzerà; essenzialmente dicendo "Oh heySono 255.255.1.1, non c'è bisogno di inviare queste informazioni al di fuori della rete, il servizio che l'utente sta richiedendo è proprio qui a casa. "Il traffico non lascia mai la rete domestica e invece fugge con efficienza attraverso il sistema NAT del router direttamente al locale macchina in cui la trasmissione avviene quasi istantaneamente e alla velocità supportata dalla rete locale.
Usando di nuovo l'analogia dell'ufficio, la funzione di loopback è come utilizzare la posta interoffice (dove non lascerà l'edificio degli uffici e richiederà solo una singola parte per ordinare e spostare).
Quindi, dove ti lascia, l'utente in cerca di funzionalità di loopback? La prima tappa sarà la ricerca del numero di modello del router e il termine "loopback NAT" per determinare se il router lo supporta (è anche possibile eseguire il riversamento sui menu di configurazione del router, ma cercarlo in genere più velocemente). Ti consigliamo inoltre di cercare il numero di modello del router e le soluzioni firmware di terze parti come il firmware Tomato e DD-WRT per determinare se eventuali soluzioni di terze parti introducono il loopback anche quando il firmware nativo non lo supporta.
Infine, potrebbe essere utile fare riferimento a questo elenco gestito da OpenSimulator Project (la funzionalità di loopback è fondamentale per le loro esigenze). È la cosa più vicina a un elenco di router di grandi dimensioni aggiornato con funzionalità di loopback che troverai.
Se sei nel mercato per un nuovo router, la scommessa più sicura è quella di acquistare con attenzione e rivedere la documentazione per qualsiasi modello che stai prendendo in considerazione.