7 votos

¿Cómo usar el mac como un router completo con DHCP, DNS, Port Fowarding, etc.?

Sé que puedo utilizar el uso compartido de Internet en MacOS para compartir la conexión a Internet proporcionada a una interfaz de red sobre una o más interfaces de red en mi Mac. Sin embargo, el conjunto de características es MUY limitado. No se puede elegir el rango de DHCP. No hay reservas de DHCP. No hay reenvío de puertos, etc.

MacOS Server tiene un servidor DHCP y otros servicios, pero ninguno de ellos comparte realmente la conexión a Internet del mac de ninguna manera, ni pueden utilizarse para controlar o añadir esas funciones a la función nativa de compartir Internet de MacOS mencionada anteriormente.

¿Existe alguna herramienta de software, de Apple o de terceros, que pueda hacer lo que hace el uso compartido de Internet (compartir la conexión a Internet de mi mac a través de una o más interfaces de red), pero con el tipo de características adicionales mencionadas anteriormente?

Gracias.


Actualización: Gracias a las dos respuestas hasta ahora que me han indicado las dos soluciones basadas en pf. Es cierto que prefiero una solución que no requiera una máquina virtual, y una solución que no requiera de la línea de comandos, pero la investigación posterior me ha señalado IceFloor y Murus y un par de otras interfaces gráficas para pfctl. Sin embargo, pfctl parece ser un firewall no un router, y lo que quiero es el enrutamiento. Aún así, estoy limitado en mi comprensión de todo esto y es posible que esto sea lo que quiero todavía porque...

Con un poco más de investigación y encuentro esto:

https://developcents.com/2013/08/12/routers-switches-firewalls-differences/

En la sección de Firewalls dice "A diferencia de los routers y switches, los firewalls son aparatos de seguridad de red" y "... la mayoría de los firewalls perimetrales también tienen capacidades de enrutamiento (aunque no es un requisito)".

Así que... supongo que me estáis indicando la utilidad de firewall pfctl porque es uno de esos firewalls que tiene capacidades de enrutamiento, lo que significa que si quiero usarlo puramente como un router y no usar ninguna de las funcionalidades del firewall, podré hacerlo. ¿Es eso correcto? ¿Y tiene incluida en sus capacidades de enrutamiento la funcionalidad que estoy buscando como se describe en la pregunta original anterior (específicamente, la elección del rango DHCP, las reservas DHCP y el reenvío de puertos)?

Me doy cuenta de que es posible que pueda responder a esto yo mismo con suficiente estudio de la documentación y de las redes en general, pero el motivo original de la pregunta es porque estoy acostumbrado a configurar la estación base Airport de Apple con la utilidad Airport y la pregunta original busca algo con ese tipo de claridad pero para configurar un Mac en lugar de una estación base Airport para hacerlo.

¿Algo de eso tiene sentido y puede alguien ayudarme, dada toda esa información extra?

2 votos

El servicio DHCP del servidor MacOS y el servicio DNS pueden ayudar a ello.

0 votos

@Josh Por favor, explique cómo DHCP y DNS maneja el firewall, NAT, reenvío de puertos, etc?

0 votos

@Josh. Lamentablemente no es el caso. No he averiguado cómo hacer que esos hagan algo útil, pero por la documentación entiendo que son servicios disponibles para manejar el tráfico de red, etc., siendo otra cosa el router. No ofrecen ningún servicio de enrutamiento en sí mismos. Incluso menos útil, no trabajan en conjunción con el servicio de enrutamiento incorporado (compartir Internet de MacOS) en MacOS. Me parece bastante estúpido, pero parece que es así. Esta es una gran parte de por qué estoy haciendo mi pregunta en el primer lugar.

4voto

Pirooz Puntos 486

Simple... Sí, claro. ....

Nota: Por favor, que alguien edite esto para incluir sólo default comandos

En esta respuesta se trata de

  • DHCP (Rango, reservas, máscara, router, tiempo de arrendamiento)
  • DNS
  • Reenvío de puertos
  • Configurar
  • Libro de texto

DHCP

Gama

Opción 1: com.apple.nat.plist [1]

  1. sudo cp /Library/Preferences/SystemConfiguration/com.apple.nat.plist /Library/Preferences/SystemConfiguration/com.apple.nat.plist.orig // Copia de seguridad por si acaso

  2. sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.nat NAT -dict-add SharingNetworkNumberStart [START IP ADDRESS]

  3. sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.nat NAT -dict-add SharingNetworkNumberStart [END IP ADDRESS]

Opción 2: /etc/bootpd.plist

  1. Activar el uso compartido de Internet

  2. sudo nano /private/etc/bootpd.plist

  3. <key>net_range</key> <array> <string>[START IP ADDRESS]</string> <string>[END IP ADDRESS]</string> </array>

Tiempo de alquiler

  1. Activar el uso compartido de Internet

  2. sudo nano /private/etc/bootpd.plist // No es necesario hacer una copia de seguridad, se recreará en caso de que haya algún problema

  3. <key>lease_max</key> <integer>[MAX TIME]</integer> <key>lease_min</key> <integer>[MIN TIME]</integer>

Máscara de subred

Opción 1: com.apple.nat.plist

  1. sudo cp /Library/Preferences/SystemConfiguration/com.apple.nat.plist /Library/Preferences/SystemConfiguration/com.apple.nat.plist.orig // Copia de seguridad por si acaso

  2. sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.nat NAT -dict-add SharingNetworkMask [SUBNET MASK]

Opción 2: /etc/bootpd.plist

  1. Activar el uso compartido de Internet

  2. sudo nano /private/etc/bootpd.plist

  3. <key>net_mask</key> <string>[SUBNET MASK]</string>

IP del router 1. Activar el uso compartido de Internet

  1. sudo nano /private/etc/bootpd.plist

  2. <key>dhcp_router</key> <string>[ROUTER IP ADDRESS]</string>


DNS

Cambiar de servidor

  1. Activar el uso compartido de Internet

  2. sudo nano /private/etc/bootpd.plist

  3. <key>dhcp_domain_name_server</key> <array> <string>[DNS SERVER IP]</string> </array>

Alterar la configuración

Opción 1: Servidor MacOS

  • Utilice Servidor MacOS | Servicio DNS
  • Una vez que lo enciendas y modifiques todos los ajustes te dirá "Establece la configuración DNS de tu red en [IP del SERVIDOR DNS] para utilizar este servidor"

    • Cambie el Servidor (el modo de hacerlo está arriba) a esta dirección IP

Opción 2: /etc/hosts 4

  1. sudo nano /private/etc/hosts

  2. IP [TAB] DOMINIO


Reenvío de puertos 5


Configuración/ Activar el uso compartido de Internet 6

  1. Abrir las preferencias del sistema

  2. Ir a Compartir

  3. Seleccione el desplegable junto a "Compartir su conexión desde:" y elija una interfaz

  4. Marque las interfaces que desea "Compartir su conexión desde"

  5. Haga clic en Opciones de WiFI y modifique allí la configuración

  6. Una vez que haya terminado, haga clic en "Aceptar" y luego marque "Compartir Internet" en la izquierda


Libro de texto/glosario (No por orden alfabético)

Router

DHCP : Protocolo de configuración dinámica de host

DNS : Sistema de nombres de dominio

Puerto

Cortafuegos : MacOS Sierra: Panel del cortafuegos en las Preferencias del Sistema de Seguridad y Privacidad

Rango IP

Subred

Reservas DHCP

Rango IP : Comprobar si el puerto está abierto

Módem : Modulador-demodulador (¿Quién nombró esto?)

Siéntase libre de editar y añadir los términos del libro de texto

0 votos

En proceso de creación de una aplicación GUI para esto...

0 votos

Hay algunos problemas con esto y es un poco inconsistente que cambiaré pronto.

0 votos

En cuanto al tiempo de arrendamiento DHCP: sólo está presente en /etc/bootpd.plist después de la interfaz a la que estoy compartiendo está conectada, así que ¿hay alguna manera de verificar que el cambio de 86400 realmente se recoge?

2voto

Lembik Puntos 106

Por supuesto, puede descargar pfSense e instálelo en una máquina virtual utilizando la aplicación anfitriona VM de su elección, VirtualBox es un ejemplo gratuito.

1 votos

Gracias por la sugerencia. Espero hacer esto sin una VM, y debería ser posible, dado lo que puede hacer el intercambio de Internet. Y la respuesta de Allan a continuación sugiere que es posible, incluso si tengo que recurrir a la línea de comandos. He añadido algo más a la pregunta anterior buscando más aclaraciones respecto a tus respuestas y las de Allan. Si puedes ofrecer algo más en base a eso, ¡gracias de antemano! :)

0 votos

PS. Te votaría por esto pero aún no tengo suficiente reputación para ello, aparentemente. Pero, por favor, sabe que lo haría si pudiera

0 votos

@DavidT pfSense fue diseñado desde el principio como un router / firewall. Hace uso de pf, casi lo consideraría una GUI para pf con alguna capacidad extendida. ¿Hay alguna razón por la que una VM no sería una solución aceptable? pfSense se ejecutará con recursos muy mínimos.

1voto

Douglas Puntos 10417

Cortafuegos PF. Ya está incluido en MacOS. Es el mismo firewall que está en el núcleo de los productos de pfSense.

Documentación completa de la FP

0 votos

Hola. Gracias por eso. Suena prometedor. Y parece coherente con la respuesta de Scottmeup más arriba. He añadido algo más a la pregunta anterior buscando más aclaraciones respecto a tus respuestas y las suyas. Si puedes ofrecer algo más en base a eso, ¡gracias de antemano! :)

0 votos

PS. Te votaría por esto pero todavía no tengo suficiente reputación para ello, aparentemente. Pero, por favor, sabe que lo haría si pudiera

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