LÉAME | 中文文档
!!! Nota: mnh
está actualmente en desarrollo, ¡las APIs
y command line options
pueden no ser compatibles con versiones anteriores!
mnh
es una herramienta que hace posible exponer un puerto detrás de NAT.
mnh
producirá un par ip:port
para su servidor NATed que puede usarse para acceso público.
--------------------------------
| Help Server (NOT behind NAT) | <------(query for ip:port pair)-------------
-------------------------------- |
^ |
| |
| ---------(Use some way to send ip:port pair)------------- |
| | | or |
| | ↓ |
------------------------ ~~~~~~~~~~~~ ----------
| Service (behind NAT) | <-------- { Internet } <---------- | Guests |
------------------------ ~~~~~~~~~~~~ ----------
El tipo de red de su servidor debe ser NAT de cono completo.
Si no sabes lo que significa, no te preocupes, simplemente continúa.
Si su servidor está detrás de un firewall o un enrutador doméstico, probablemente necesite habilitar UPnP o reenviar un puerto a su servidor en su enrutador, ya que pueden bloquear todo el tráfico entrante.
Por favor verifique mnh_server.
Actualmente solo se admite el protocolo
mnhv1
; se agregarán más protocolos en el futuro, como STUN.
Usage:
mnh {tcp|udp} --server <server> [flags]
Flags:
-s, --server string Help server address(Example: "server.com", "server.com:6641")
If only specify hostname, it will try SRV resolve.
If SRV failed, it will use default port(6641).
-i, --id string A unique id to identify your machine
-m, --mode string Run mode.
TCP support: demoWeb proxy (default "demoWeb")
UDP support: demoEcho proxy (default "demoEcho")
-p, --port int The local hole port which incoming traffics access to
-t, --service string Target service address. Only need in proxy mode (default "127.0.0.1:80")
-r, --routerForward A comma-split list which will be used sequentially to request router to do port forwarding (default: "upnp,notice")
upnp: UPnP protocol
notice: Will notice you to do port forwarding manually
none: Do port forwarding manually
-x, --event-hook Execute command when event triggered:
escape:
%%: percent sign
%e: Event: connecting fail success disconnected
%m: Error message
%p: Local hole port
%a: Hole addr
-h, --help help for mnh
Ejemplo:
Ejecute un servidor web para realizar pruebas:
./mnh tcp --server server.com --id test
Ejecute un servidor UDP Echo para realizar la prueba:
./mnh udp --server server.com --id udpEcho --mode demoEcho
Exponer un servidor web local:
./mnh tcp --server server.com --id web --mode proxy --service 127.0.0.1:80
mnh
intentará solicitar al enrutador que realice el reenvío de puertos con el protocolo upnp
de forma predeterminada.
Si falla, mostrará un notice
.
Puede desactivar estas dos funciones configurando --routerForward none
, asegúrese de haber configurado el reenvío de puertos correctamente. (Ver Pre-solicitudes)
./mnh tcp --server server.com --id web --mode proxy --service 127.0.0.1:80 --port 8888 --routerForward none