4 votos

Redirigir el puerto local a través del puente a Internet IP estática compartida

Tengo mi módem de cable (10.0.0.1) a mi iMac (10.0.0.36), y mi iMac (10.0.0.36) con una (bridge100 192.168.2.1) IP compartida de Internet a mi máquina debian (192.168.2.34), y todo eso funciona perfectamente. Ahora me gustaría reenviar el puerto 80 de Internet a través del puente en mi iMac a mi máquina debian...

10.0.0.1:80 <-> 10.0.0.36:8080 <-> 192.168.2.1:8080 <-> 192.168.2.34:80

He encontrado lo siguiente enlace que me llevó a

rdr on bridge100 inet proto tcp from any to 10.0.0.36 port = 8080 -> 192.168.2.34 port 80

Sin embargo, no está funcionando... Ahora en el enlace van a localhost, y he encontrado esto enlace que dice que puedo necesitar algo como

pass out route-to (bridge100 192.168.2.1) from any to 10.0.0.36

Pero no he podido conseguir pfctl para analizar la línea anterior correctamente

¿Alguna idea de cómo puedo reenviar desde 10.0.0.36:80 <-> 192.168.2.1 <-> 192.168.2.34:80 ?

Edición: El cable módem/router es un TG852G de Xfinity...

Edición: pfdump

                                        r     scrub-anchor "com.apple/*" all fragment reassemble
                                        r     anchor "com.apple/*" all
                                        r     anchor "usr.home/*" all
                                        n     nat-anchor "com.apple/*" all
                                        n     rdr-anchor "com.apple/*" all
                                        A       com.apple
                                        A       com.apple.internet-sharing
                                        A       usr.home
com.apple                               r     anchor "200.AirDrop/*" all
com.apple                               r     anchor "250.ApplicationFirewall/*" all
com.apple                               A       com.apple/200.AirDrop
com.apple                               A       com.apple/250.ApplicationFirewall
com.apple/200.AirDrop                   A       com.apple/200.AirDrop/Bonjour
com.apple/200.AirDrop/Bonjour           r     pass in on p2p0 inet6 proto udp from any to any port = 5353 keep state
com.apple/200.AirDrop/Bonjour           r     pass out on p2p0 proto tcp all flags any keep state
com.apple.internet-sharing              r     scrub-anchor "base_v4" all fragment reassemble
com.apple.internet-sharing              r     anchor "base_v4" all
com.apple.internet-sharing              n     nat-anchor "base_v4" all
com.apple.internet-sharing              n     rdr-anchor "base_v4" all
com.apple.internet-sharing              A       com.apple.internet-sharing/base_v4
com.apple.internet-sharing/base_v4      r     scrub on en1 all no-df fragment reassemble
com.apple.internet-sharing/base_v4      r     scrub on bridge100 all no-df max-mss 1460 fragment reassemble
com.apple.internet-sharing/base_v4      r     scrub on bridge100 proto esp all no-df fragment reassemble
com.apple.internet-sharing/base_v4      r     pass on en1 all flags any keep state
com.apple.internet-sharing/base_v4      r     pass on en1 proto esp all no state
com.apple.internet-sharing/base_v4      r     pass on bridge100 all flags any keep state rtable 7
com.apple.internet-sharing/base_v4      n     nat on en1 inet from 192.168.2.0/24 to any -> (en1:0) extfilter ei
com.apple.internet-sharing/base_v4      n     no nat on bridge100 inet from 192.168.2.1 to 192.168.2.0/24
com.apple.internet-sharing/base_v4      n     rdr on bridge100 inet proto tcp from 192.168.2.0/24 to any port = 21 -> 127.0.0.1 port 8021
usr.home                                r     anchor "SSH" all
usr.home                                A       usr.home/SSH
usr.home/SSH                            n     rdr on en1 inet proto tcp from any to 10.0.0.36 port = 8080 -> 192.168.2.34 port 80

2voto

klanomath Puntos 19587

El comando adecuado para redirigir el tráfico http en su caso es:

echo "rdr on $ext inet proto tcp from any to 10.0.0.36 port = 80 -> 192.168.2.34 port 80" | sudo pfctl -a com.apple/HTTP -f -

Con $ext: la interfaz del iMac conectada al router/módem (probablemente en0 o en1). ¡Se hace una redirección en la interfaz y el tráfico entrante! Por lo tanto rdr on bridge100 ... no tiene ningún sentido aquí: no se espera que el tráfico HTTP con el destino 192.168.2.34 de el puente100 a la red detrás del mismo puente100.

El comando anterior utiliza el sub-anclaje temporal com.apple/HTTP y después de un reinicio desaparecerá.

Si desea habilitarlo de forma permanente, cree un anclaje independiente como se indica en esta respuesta: pfctl - cómo añadir un ancla y hacerla activa / cargarla o aquí: Reenvío de puertos en el Mac Pro con macOS Sierra .

A pass out route-to ... sólo es necesario si quieres redirigir el tráfico saliente del iMac.


En teoría se requiere una ruta estática adicional en el router/módem (TG852G):

route to 192.168.2.0/24 via 10.0.0.36

Aquí (aunque con otro router) funcionaba sin él.

Las soluciones de doble NAT generalmente no se recomiendan en entornos SOHO y sugiero conectar el servidor Debian Linux directamente a uno de los puertos Ethernet del router/módem o a un switch interconectado.

0 votos

Gracias por su respuesta, desafortunadamente, sigue sin funcionar, ¿algún consejo que pueda ofrecer para solucionar el problema?

0 votos

@JeffreyL.Roberts ¿Recibes un mensaje de error? ¿Puedes publicar un pfdump en algún lugar - ya sea aquí (añadiéndolo a su pregunta como anexo) o en pastebin.com.

0 votos

Haré lo que sugieres, y conectaré la caja directamente al cable módem

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X