Modifica le regole di inoltro porta del router da Terminal

0

Sto provando a modificare le regole NAT / Port forwarding del mio router usando il terminale sul mio Mac. La mia attuale configurazione è simile a questa

Public  <->  Internet  <->  Modem + Router (1.1.1.1)  <->  Macbook (192.168.1.2)

C'è un server web / app in esecuzione sulla porta 7919 sul mio Macbook e mi piacerebbe port-forward in modo che chiunque possa accedervi pubblicamente da internet. Nello specifico, voglio 1.1.1.1:7919 per inoltrare i dati a 192.168.1.2:7919 .

So che posso farlo accedendo all'interfaccia web delle impostazioni del router o utilizzando altre app della GUI come PortMap , ma Ho bisogno di farlo usando la riga di comando.

Ho cercato una soluzione per ore e ancora non sono stato in grado di trovare una soluzione semplice che faccia questo per me. Il più vicino è stato a natd , ma è stato deprecato a favore di pfctl , e non riesco a capirlo.

    
posta Sheharyar 01.10.2015 - 22:55
fonte

1 risposta

1

Dopo aver cercato ore, non ero ancora in grado di trovare un'utilità da riga di comando incorporata che faccia ciò che sto chiedendo. Ma ho trovato qualcos'altro che è abbastanza vicino. È PortMapper , un'applet java fornita con un'interfaccia della riga di comando per gestire i port-mapping di il tuo router (deve essere compatibile con UPnP).

Dato che il mio piano era di fare tutto dal terminale, ti guiderò attraverso i passaggi:

# Download the latest version
curl -fSL "https://sourceforge.net/projects/upnp-portmapper/files/latest/download" -o portmapper.jar

# See the basic help
java -jar portmapper.jar -h

# List all port-forwarding rules
java -jar portmapper.jar -list

# Create a new rule
java -jar portmapper.jar -add -externalPort 7919 -internalPort 7919 -ip 192.168.1.2 -protocol tcp

# Delete a rule
java -jar portmapper.jar -delete -externalPort 7919 -protocol tcp

Si presume che java sia installato e disponibile nella shell

    
risposta data 02.10.2015 - 02:30
fonte

Leggi altre domande sui tag