Previous Next Table of Contents

3. Configuración de IP Masquerade

Si su red privada contiene información vital, piénselo dos veces antes de usar IP Masquerade. Esto puede ser una PASARELA para que salga a Internet, y viceversa, para que alguien de la otra parte del mundo entre en su red.

3.1 Compilar el núcleo para dar soporte a IP Masquerade

** Por favor dirijase a IP Masquerade Resource para una información mas actualizada, es difícil actualizar este COMO frecuentemente. **

Nota:

Tambien puede cargar los módulos manualmente antes de usar ip_masq, pero no use kerneld para esto, NO funcionará.

3.2 Asignando direcciones IP a la red privada

Como todas las OTRAS máquinas no tienen dirección oficial asignada, debe haber una forma correcta de adjudicar direcciones para esas máquinas.

De la FAQ IP Masquerade :

Hay un RFC (#1597) en el cúal están las direciones IP para ser usadas en una red no conectada a Internet. Hay 3 bloques de números reservados específicamente para este fin. El que yo uso es una subred de clase C 255 desde 192.168.1.n hasta 192.168.255.n .

Del RCF 1597:

Sección 3: Espacio para Direcciones Privadas

El Internet Assigned Numbers Authority (IANA) tiene reservado los 
siguientes 3 bloques de direcciones IP para redes privadas:

              10.0.0.0        -   10.255.255.255
              172.16.0.0      -   172.31.255.255
              192.168.0.0     -   192.168.255.255

Nos referiremos al primer bloque como "bloque de 24-bit", al segundo como 
"bloque de 20-bit", y al tercero como "bloque de 16-bit". Observe que el 
primer bloque no es más que un simple número de red de clase A, mientras que 
el segundo bloque es un conjunto de 16 números de red de clase B contiguos y   
el tercer bloque un conjunto de 255 números de red de clase C contiguos. 
Así, si está usando una red de clase C, debería de nombrar a sus máquinas como 192.168.1.1, 1.92.168.1.2, 1.92.168.1.3, ..., 192.168.1.x

192.168.1.1 es normalmente la máquina pasarela, la cúal es su servidor Linux conectado a Internet. Observe que 192.168.1.0 y 192.168.1.255 son las direcciones de RED(Network) y la dirección de EMISIÓN(Broadcast) respectivamente, las cuales estan reservadas. Evite usar estas direcciones en sus máquinas.

3.3 Configurando las OTRAS máquinas

Además de poner la dirección IP apropiada a las máquinas, también debería de poner la apropiada de la pasarela(gateway). En general, es seguir el camino. Simplemente introduzca la direción de su servidor Linux (usualmente 192.168.1.1) como la dirección de la máquina pasarela.

Para el Domain Name Service, puede añadir algún DNS disponible. El más obvio debería de ser el que su máquina Linux esté usando. También puede añadir opcionalmente algún sufijo de dominio de búsqueda.

Después de que haya reconfigurado esas direcciones, recuerde reiniciar los servicios apropiados o reiniciar su sistema.

Las siguientes instrucciones de configuración suponen que está usando una red de clase C con 192.168.1.1 como dirección de su servidor Linux. Por favor, observe que 192.168.1.0 y 192.168.1.255 están reservadas.

Configurando Windows 95

  1. Si no ha instalado la tarjeta de red y el controlador(driver), hágalo ahora.
  2. Vaya a 'Panel de Control'-> 'Red'.
  3. Añada 'Protocolo' -> 'Microsoft' -> 'TCP/IP' si no lo tiene.
  4. En 'Propiedades' -> 'TCP/IP', vaya a 'Dirección IP' y ponga la dirección IP 192.168.1.x, (1 < x < 255), y con máscara de subred 255.255.255.0
  5. Añada 192.168.1.1 como su pasarela en 'Puerta de enlace(Gateway)'.
  6. En 'Configuración DNS'/ 'Orden de búsqueda del servidor DNS' añada el DNS que usa su servidor Linux (usualmante está en /etc/resolv.conf). Opcionalmente, puede añadir el apropiado sufijo de búsqueda de dominio.
  7. Deje las otras opciones como están, salvo que sepa lo que está haciendo.
  8. Pulse 'Aceptar' en todas las cajas de diálogo y reinicialice el sistema.
  9. Haga un Ping a la máquina Linux para comprobar la red: 'Inicio/Ejecutar' , teclee : ping 192.168.1.1
    (Esto sólo comprueba la conexión local, todavía no puede hacer un ping a la otra parte del mundo.)
  10. Opcionalmente puede crear un fichero HOSTS en el directorio de windows así puede usar los nombres de las máquinas de su red local. Hay un ejemplo llamado HOSTS.SAM en el directorio c:\windows.

Configurando Windows para Trabajo en Grupo 3.11

  1. Si no ha instalado la tarjeta de red y el controlador, hágalo ahora.
  2. Instale el paquete TCP/IP 32b si todavía no lo tiene.
  3. En 'Main'/'Windows Setup'/'Network Setup', pulse en 'Drivers'.
  4. Marque 'Microsoft TCP/IP-32 3.11b' en la sección 'Network Drivers', pulse 'Setup'.
  5. Ponga la dirección IP 192.168.1.x (1 < x < 255), y la máscara de subred 255.255.255.0 y como Default Gateway 192.168.1.1
  6. No habilite 'Automatic DHCP Configuration' y no ponga nada en esas áreas de entrada 'WINS Server' a menos que esté bajo un dominio de Windows NT y sepa lo que está haciendo.
  7. Pulse 'DNS', añada la información mencionada en el PASO 6 de la secion 3.3.1, luego pulse 'Aceptar' cuando este hecho.
  8. Pulse 'Advanced', marque 'Enable DNS for Windows Name Resolution' y 'Enable LMHOSTS lookup' si está usando un fichero de búsqueda de servidores, similar al mencionado en el PASO 10 de la sección 3.3.1
  9. Pulse 'OK' en todas las cajas y reinicialice el sistema.
  10. Haga un Ping a la máquina Linux para comprobar la conexión de red : 'Archivo/Ejecutar', ponga: ping 192.168.1.1
    (Con esto sólo comprueba la conexión de la red local , todavía no puede hacer un ping al resto del mundo.)

Configurando Windows NT

  1. Si no ha instalado su tarjeta de red y el controlador, hágalo ahora.
  2. Vaya a 'Main'/'Control Panel'/'Network'
  3. Añada el Protocolo TCP/IP y Related Component desde el menú 'Add Software' si no tiene todavía el servicio TCP/IP instalado.
  4. Bajo la sección 'Network Software and Adapter Cards' , marque el 'TCP/IP Protocol' en la caja de selección 'Installed Network Software' .
  5. En 'Configuración TCP/IP', elija el adaptador adecuado, por ejemplo: [1]Novell NE2000 Adapter. Luego ponga la Dirección IP 192.168.1.x (1 < x < 255), como Mascara de Subred 255.255.255.0 y como Pasarela 192.168.1.1
  6. No use 'Automatic DHCP Configuration' y no ponga nada en 'WINS Server' a menos que esté bajo un domino de Windows NT y sepa lo que está haciendo.
  7. Pulse 'DNS', rellene con la información apropiada mencionada en el PASO 6 de la sección 3.3.1 y luego pulse 'OK' cuando esté hecho.
  8. Pulse 'Advanced', marque 'Enable DNS for Windows Name Resolution' y 'Enable LMHOSTS lookup' si está usando un fichero de búsqueda de servidores, similar al mencionado en el PASO 10 de la secion 3.3.1
  9. Pulse 'OK' en todas las cajas de dialogo y reinicialice el sistema.
  10. Haga un Ping a la máquina Linux para comprobar la conexión de red: 'File/Run', ponga: ping 192.168.1.1
    (Esto sólo comprueba la conexión de la red local, todavía no puede hacer un ping al mundo exterior.)

Configurando sistemas basados en UNIX

  1. Si no ha instalado la tarjeta de red y recompilado su nucleo con el controlador adecuado, hágalo ahora.
  2. Instale la red TCP/IP, así como el paquete de herramientas de red, si no lo ha hecho todavía.
  3. Ponga en la DIRECCIÓN IP(IPADDR) 192.168.1.x (1 < x < 255), y luego ponga 255.255.255.0 enNETMASK , GATEWAY 192.168.1.1, y en BROADCAST 192.168.1.255
    Por ejemplo, puede editar el fichero /etc/sysconfig/network-scripts/ ifcfg-eth0 en sistemas Red Hat Linux, o simplemente hacerlo mediante el Control Panel.
    (Es diferente en SunOS, BSDi, Linux Slackware, etc...)
  4. Añada su DNS y búsqueda de sufijo de dominio en /etc/resolv.conf
  5. Puede querer actualizar su fichero /etc/networks dependiendo de sus configuraciones.
  6. Reinicialice los servicios apropiados, o simplemente reinicialice el sistema.
  7. Use un ping comando: ping 192.168.1.1 para comprobar la conexión con la máquina pasarela.
    (Esto sólo comprueba la conexión de la red local, todavía no puede hacer un ping al mundo exterior.)

Configurando DOS usando el paquete NCSA Telnet

  1. Si no ha instalado la tarjeta de red, hágalo ahora.
  2. Cargue el controlador adecuado. Para una tarjeta NE2000 , use nwpd 0x60 10 0x300, con su tarjeta de red en el IRQ 10 y la dirección hardware en 0x300 (Su configuración puede ser distinta).
  3. Cree un nuevo directorio, y desempaquete el NCSA Telnet : pkunzip tel2308b.zip
  4. Use un editor de texto para abir el fichero config.tel
  5. Ponga myip=192.168.1.x (1 < x < 255), y netmask=255.255.255.0
  6. En este ejemplo, debería de poner hardware=packet, interrupt=10, ioaddr=60
  7. Debería de tener al menos especificada una máquina individual como pasarela, por ejemplo, el servidor Linux :
    name=default
    host=Nombre_del_servidor_Linux
    hostip=192.168.1.1
    gateway=1
    
  8. Tiene otra especificación para el servicio de nombre de dominio :
    name=dns.domain.com ; hostip=123.123.123.123; nameserver=1
    
    Nota: sustituya la información sobre el DNS por la que usa en su servidor Linux
  9. Salve su fichero config.tel
  10. Haga un telnet a la máquina Linux para comprobar la conexión de red : telnet 192.168.1.1

Configurando sistemas basados en MacOS usando MacTCP

  1. Si no ha instalado en controlador de su tarjeta ethernet, ahora podría ser un buen momento para hacerlo.
  2. Abra el MacTCP control panel. Seleccione el controlador de red adecuado (Ethernet, NO EtherTalk) y pulse el botón 'More...'.
  3. Bajo 'Obtain Address:', pulse 'Manually'.
  4. Bajo 'IP Address:', seleccione class C del menú desplegabe. Ignore el resto de esta sección de la caja de dialogo.
  5. Rellene con la información adecuada bajo 'Domain Name Server Information:'.
  6. Bajo 'Gateway Address:', introduzca 192.168.1.1
  7. Pulse 'OK' y sálvelo. En la ventana principal en MacTCP control panel, introduzca la dirección IP de su Mac (192.168.1.x, 1 < x < 255) en la caja 'IP Address:'.
  8. Cierre el MacTCP control panel. Si aparece un cuadro de diálogo indicando que reinicie el sistema, hágalo.
  9. Puede hacer un ping a la máquina Linux para comprobar la conexión de red. Si tiene el programa freeware MacTCP Watcher, pulse en el boton ' Ping', e introduzca la dirección de su máquina Linux(192.168.1.1) en la caja de dialogo que se despliega. (Esto solamente comprueba la conexión de la red local, y todavía no puede hacer un ping al exterior.)
  10. Opcionalmente puede crear un archivo Hosts en su System Folder de forma que pueda usar los nombres de la máquinas de su red local. Este archivo podría existir ya en su System Folder, y podría contener algunas entradas de ejemplo (como comentario) que puede modificar de acuerdo a sus necesidades.

Configurando sistemas basados en MacOS usando Open Transport

  1. Si no ha instalado el controlador adecuado de la tarjeta ethernet, ahora sería un buen momento para hacerlo.
  2. Abra el TCP/IP Control Panely elija 'User Mode ...' del menú Edit. Asegúsese que el modo de usuario es al menos 'Advanced ' y pulse el botón'OK'.
  3. Elija 'Configurations...' del menu File. Seleccione su configuración 'Default' y pulse el botón 'Duplicate...'. Introduzca 'IP Masq' (o algo para saber que está es una configuración especial) en el dialogo 'Duplicate Configuration' , este probablemente pondrá algo como 'Deafault copy'. Luego pulse el boton 'OK', y el botón 'Make Active'
  4. Seleccione 'Ethernet' del desplegable 'Connect via:'.
  5. Seleccione el elemento apropiado del desplegable 'Configure:'. Si no sabe que opción elegir, probablemente debería de reselecionar su configuración 'Default' y salir. Yo uso 'Manually'.
  6. Introduzca la direccion IP de su Mac (192.168.1.x, 1 < x < 255) en la caja 'IP Address:'.
  7. Ponga 255.255.255.0 en la caja de 'Subnet mask:' .
  8. Ponga 192.168.1.1 en la caja de 'Router address:'.
  9. Introduzca la dirección IP de su DNS en la caja 'Name server addr.: '.
  10. Introduzca el nombre de su dominio de Internet (por ejemplo: 'microsoft.com') en la caja 'Starting domain name' bajo 'Implicit Search Path:'.
  11. Los siguientes procesos son opcionales. Valores incorrectos pueden causar comportamientos erróneos. Si no está seguro, es probablemente mejor que los deje en blanco, sin marcar o sin seleccionar. Borre la información de esos campos, si es necesario. Hasta donde sé, no hay forma de decirle al sistema, a través de los diálogos TCP/IP, que no use un archivo de Hosts alternativo previamente seleccionado. Si lo sabe me interesaría. Marque '802.3' si su red requiere tramas del tipo 802.3.
  12. Pulse el botón 'Options...' para estar seguro que TCP/IP está activo. Yo uso la opción 'Load only when needed'. Si usa y quita aplicaciones TCP/IP con frecuencia sin reiniciar su máquina, puede que al deshabilitar esta última opción se prevendrá/reducirá los efectos de la administración de memoria. Con esta opción deshabilitada las pilas del protocolo TCP/IP están siempre cargadas y disponibles para su uso. Si está habilitada, las pilas TCP/IP se cargan automáticamente cuando se necesitan y se descargan cuando no. Estos procesos de carga y descarga hacen que la memoria de su máquina se fragmente.
  13. Puede hacer un ping a su servidor Linux para comprobar la conexión de red. Si tiene el programa freeware MacTCP Watcher, pulse el boton 'Ping' , e introduzca la dirección de su servidor Linux (192.168.1.1) en la caja de dialogo que aparece. (Esto sólo comprueba su conexión de la red local, todavía no puede hacer un ping al mundo exterior.)
  14. Puede crear un fichero Hosts en System Folder y así puede usar los nombres de las máquinas de su red local. Este fichero puede ya existir o no en la System Folder. Si es así, debería de contener alguna entrada (como comentario) de ejemplo, la cual puede modificar dependiendo de sus necesidades. Si no, puede obtener una copia del fichero de un sistema que use MacTCP, o crearlo vd. mismo (sigue un subconjunto del formato de ficheros de Unix /etc/hosts, descrito en la pagina 33 de RFC 1035). Una vez ha creado el fichero, abra el TCP/IP control panel, pulse el botón 'Select Hosts File...', y abra el archivo Hosts.
  15. Pulse la caja cerrar o elija 'Close' o 'Quit' del menú File, y luego pulse el botón 'Save' pasa salvar los cambios que ha hecho.
  16. Los cambios tendrán efecto inmediatamnete, pero reinicializando el sistema no pierde nada.

Configurando la red Novell usando DNS

  1. Si no tiene instalado el controlador apropiado de su tarjeta ethernet, ahora seria un buen momento para hacerlo.
  2. Descargue el tcpip16.exe de ftp.novell.com/pub/updates/unixconn/lwp5
  3. edite c:\nwclient\startnet.bat
    
    : (aquí tiene una copia del mío)
    SET NWLANGUAGE=ENGLISH
    LH LSL.COM
    LH KTC2000.COM
    LH IPXODI.COM
    LH tcpip
    LH VLM.EXE
    F:
    
  4. edite c:\nwclient\net.cfg
    
    : (cambie el enlace del controlador por el suyo; por ejemplo : NE2000)
    Link Driver KTC2000
            Protocol IPX 0 ETHERNET_802.3    
            Frame ETHERNET_802.3     
            Frame Ethernet_II        
            FRAME Ethernet_802.2
    
    NetWare DOS Requester
               FIRST NETWORK DRIVE = F
               USE DEFAULTS = OFF
               VLM = CONN.VLM
               VLM = IPXNCP.VLM
               VLM = TRAN.VLM
               VLM = SECURITY.VLM
               VLM = NDS.VLM
               VLM = BIND.VLM
               VLM = NWP.VLM
               VLM = FIO.VLM
               VLM = GENERAL.VLM
               VLM = REDIR.VLM
               VLM = PRINT.VLM
               VLM = NETX.VLM
    
    Link Support
            Buffers 8 1500
            MemPool 4096
    
    Protocol TCPIP
            PATH SCRIPT     C:\NET\SCRIPT
            PATH PROFILE    C:\NET\PROFILE
            PATH LWP_CFG    C:\NET\HSTACC
            PATH TCP_CFG    C:\NET\TCP
            ip_address      xxx.xxx.xxx.xxx
            ip_router       xxx.xxx.xxx.xxx
    
  5. y finalmente cree el
    c:\bin\resolv.cfg
    
    :
    SEARCH DNS HOSTS SEQUENTIAL
    NAMESERVER 207.103.0.2
    NAMESERVER 207.103.11.9
    
  6. Espero que esto ayude a alguien para conseguir poner su red Novell en línea. Esto se puede hacer usando Netware 3.1x o 4.x

Configurando OS/2 Warp

  1. Sino tiene instalado el controlador de su tarjeta Ethernet, ahora sería un buen momento para hacerlo.
  2. Instale el protocolo TCP/IP, si todavía no lo tiene.
  3. Diríjase a Programms/TCP/IP (LAN) / TCP/IP Settings
  4. En 'Network' añada su dirección TCP/IP y ponga como máscara de red(Netmask) 255.255.255.0
  5. En 'Routing' presione 'Add'. Ponga el Type en 'default' y teclee la dirección IP de su servidor Linux en el campo 'Router Address'. (192.168.1.1).
  6. Ponga la misma dirección DNS (Nameserver) que usa su servidor Linux en 'Hosts'.
  7. Cierre el panel de control de TCP/IP. Y responda SI a la siguiente(s) pregunta(s).
  8. Reinicialice la maquina
  9. Debe de hacer un ping al servidor Linux para comprobar la configuración de red. Teclee 'ping 192.168.1.1' en una 'Ventana de comandos de OS/2'. Cuando los paquetes ping sean recibidos es que todo está bien.

Configurando otros sistemas

Se deberían de seguir los mismos pasos para otras configuraciones. Lea las secciones anteriores. Si está interesado en escribir sobre alguno de estos sistemas, o algunas variantes de sistemas basados en UNIX, por favor mande las instrucciones detalladas de configuración a ambrose@writeme.com.

3.4 Configurando la política de IP Forwarding

Llegados a este punto ya debería de tener instalados el núcleo y los otros paquetes requeridos, así como los módulos cargados. También, la dirección IP, la pasarela, y el DNS deberían de estar configurados en todas las OTRAS máquinas.

Ahora, la única cosa que queda por hacer es usar ipfwadm para enviar los paquetes apropiados a la máquina apropiada:

** Esto puede ser de realizado de diferentes formas . Las siguientes sugerencias y ejemplos a mi me funcionan, pero usted puede tener diferentes ideas, por favor mire la sección 4.4 y las páginas man de ipfwadm para más detalles. **

ipfwadm -F -p deny 
ipfwadm -F -a m -S yyy.yyy.yyy.yyy/x -D 0.0.0.0/0 
donde x es uno de los siguientes números dependiendo del tipo de su subred, e yyy.yyy.yyy.yyy es su dirección de red.
máscara de red  | x  | Subred
~~~~~~~~~~~~~~~~|~~~~|~~~~~~~~~~~~~~~
255.0.0.0       | 8  | Clase A
255.255.0.0     | 16 | Clase B
255.255.255.0   | 24 | Clase C
255.255.255.255 | 32 | Punto-a-punto

Por ejemplo, si estuviera en una subred de clase C , tendría que haber puesto:

ipfwadm -F -p deny 
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0 

Al segundo comando podría añadir bien -V 192.168.1.1 o bien -W eth0 para asegurar que los paquetes enmascarados vienen a través del interfaz del sistema apropiado. Si quiere estar seguro a conciencia (también conocido como paranoia justificable) entonces querrá hacer esto.

Puesto que bootp solicita paquetes que vienen sin una dirección IP válida el cliente no sabe nada sobre ello, para gente con un servidor bootp en la máquina masquerade/cortafuegos es necesario usar lo siguiente antes del comando deny:

ipfwadm -I -a accept -S 0/0 68 -D 0/0 67 -W bootp_clients_net_if_name -P udp

También puede hacerlo máquina por máquina. Por ejemplo, si quieres que la 192.168.1.2 y la 192.168.1.8 tengan acceso a Internet, pero no las otras máquinas, debería de poner:

ipfwadm -F -p deny 
ipfwadm -F -a m -S 192.168.1.2/32 -D 0.0.0.0/0 
ipfwadm -F -a m -S 192.168.1.8/32 -D 0.0.0.0/0 

Alternativamente, puede poner la máscara de red en lugar del valor, por ejemplo: 192.168.1.0/255.255.255.0

Lo que parece ser un ERROR común es poner como primer comando :

ipfwadm -F -p masquerade
NO haga que su política por defecto sea masquerading - de esta forma alguien puede manipular su ruta y será capaz de atraves su pasarela, ¡¡ usándola para enmascarar su identidad !!

De nuevo, puede añadir estas líneas al fichero /etc/rc.local, o al fichero rc que prefiera, o hágalo manualmente cada vez que necesite ip_masq.

Por favor lea la sección 4.4 para una guía detallada de Ipfwadm

3.5 Comprobando IP Masquerade

Es la hora hacer un intento, después de todo este duro trabajo. Asegúrese de que la conexión a Internet del servidor Linux está bien.

Puede intentar navegar por algun sitio web de 'INTERNET!!!' en sus OTRAS máquinas, y ver si lo consigue. En su primer intento le recomiendo usar una dirección IP en vez de un nombre de máquina, porque la configuración del DNS puede no ser correcta.

Por ejemplo, puede acceder al servidor Linux Documentation Project http://sunsite.unc.edu/mdw/linux.html con un valor de http://152.2.254.81/mdw/linux.html

Si ve la pagina del LDP, ¡ felicidades !, ¡ funciona ! Luego puede intentarlo con el nombre del servidor, y luego un telnet, ftp, Real Audio, True Speech, ... o todo aquello soportado por IP Masquerade.....

Hasta ahora no he tenido problemas con las configuraciones anteriores, y están totalmente acreditadas por la gente que gasta su tiempo en hacer que esta maravillosa característica funcione.


Previous Next Table of Contents