Nat en OpenBSD 4.9

Que es NAT:  

           NAT (Network Address Translation - Traducción de Dirección de Red) es un mecanismo utilizado por enrutadores IP para intercambiar paquetes entre dos redes que se asignan mutuamente direcciones incompatibles. Consiste en convertir en tiempo real las direcciones utilizadas en los paquetes transportados. También es necesario editar los paquetes para permitir la operación de protocolos que incluyen información de direcciones dentro de la conversación del protocolo.

           Su uso más común es permitir utilizar direcciones privadas (definidas en el RFC 1918) para acceder a Internet. Existen rangos de direcciones privadas que pueden usarse libremente y en la cantidad que se quiera dentro de una red privada. Si el número de direcciones privadas es muy grande puede usarse solo una parte de direcciones públicas para salir a Internet desde la red privada. De esta manera simultáneamente sólo pueden salir a Internet con una dirección IP tantos equipos como direcciones públicas se hayan contratado. Esto es necesario debido al progresivo agotamiento de las direcciones IPv4. Se espera que con el advenimiento de IPv6 no sea necesario continuar con esta práctica.  (Fuente)

#MACROS Se define que interfaz se usa para cada proposito.
wan=rl0
lan=dc0


#Red interna
red_lan="10.0.55.0/24
"



#NAT esta regla hace que toda la red pueda salir a Internet.
match out on $wan from $red_lan to any nat-to $wan



Nota: Este es un fragmento de la configuración de un archivo pf.conf y solo hace referencia a NAT.

Luego activamos el reenvío de paquetes IP

Dado que NAT se utiliza casi siempre en los enrutadores y pasarelas de red, probablemente será necesario habilitar el reenvío de IP (IP Forwarding) para que los paquetes puedan viajar entre las interfaces de red de la máquina OpenBSD. El reenvío de IP se habilita mediante el mecanismo sysctl(3):

# sysctl net.inet.ip.forwarding=1 

# sysctl net.inet6.ip6.forwarding=1 (if using IPv6)

Para que este cambio sea permanente, hay que añadir las siguientes líneas al fichero /etc/sysctl.conf:

net.inet.ip.forwarding=1

net.inet6.ip6.forwarding=1

Estas líneas ya existen en la instalación predeterminada, pero como comentarios (prefijadas con #). Hay que quitar el signo # y guardar el fichero. El reenvío de IP se activará cuando se reinicie la máquina.   (Fuente)

Estructuras de directorios en OpenBSD

/

Directorio raíz del sistema de archivos.
altroot


bin

Utilidades de usuario fundamentales tanto para el ambiente monousuario como para el multiusuario.
dev

Nodos de dispositivo.
etc

Archivos de configuración y «scripts» del sistema.
home

Contiene utilidades y programas generales de cada usuario.
mnt

Directorio vacío utilizado de forma habitual por administradores de sistemas como punto de montaje temporal.
root

Directorio local para la cuenta root.
sbin

Programas del sistema y utilidades fundamentales de administración para ambientes monousuario y multiusuario.
stand

Contiene los archivos de arranque del sistema y el núcleo de Unix.
tmp

Para almacenar archivos temporarles.
usr

Contiene la mayoría de utilidades y aplicaciones de usuario.
var

Archivos multipropósito de log, temporales, en tránsito y de «spool».

Asignar puerta de enlace


Debemos acceder a la carpeta "/etc/" y buscar el archivo "mygate" y editarlo de la siguiente manera:


192.168.1.1


Aquí les dejo un ejemplo teniendo en cuenta de que la Puerta de Enlace Predeterminada es "192.168.1.1":


Si no se encuentra el archivo podemos crearlo con el comando "touch".


touch /etc/mygate

Asignar dirección ip y mascara de red a una placa de red

Bien, primero debemos acceder a la carpeta "/etc/" y buscar el archivo "hostname.nombredelainterfaz" (nombredelainterfaz es igual al nombre que OpenBSD le haya asignado a nuestra placa de red, en mi caso mi placa de red se llama "rl0" por consiguiente mi archivo es "hostname.rl0"), bien aquí les dejo un ejemplo de como configurarlo:


inet 10.0.55.1 255.255.255.0 NONE


En este ejemplo asignamos la dirección de ip 10.0.55.1 y mascara de red 255.255.255.0.


Para aplicar los cambios ejecutamos:


sh /etc/netstat

Asignar Servidores DNS

Debemos acceder a la carpeta "/etc/" y buscar el archivo "resolv.conf" y editarlo de la siguiente manera (en este ejemplo se utiliza como ejemplo de servidor de DNS primario "200.45.191.35" y "200.45.191.40" como DNS secundario, reemplácelo por el dominio que usted desee):


lookup file bind
nameserver 200.45.191.35
nameserver 200.45.191.40