Router Virtual

Configuración

  • Disco Duro:
    • /, ext3, label=none, size=2.0 GiB
    • none, swap, label=none, size=96 MiB
  • Administración
    • user=router; pass=67ujnbvcdr5

Herramientas de Administración

  • Instaladas desde los repositorios de Ubuntu Server:
    • libpcre, libperl, libnetl
    • SSH: ssh (cliente), openssh-server (servidor)
      • para gestionar igualmente la red interna puede ser conveniente instalar sshfs (y las dependencias de fuse)
    • herramientas de IP: traceroute, tcptraceroute, xprobe, iptraf
    • herramientas de DNS: dnsdoctor
    • herramientas de WWW: links (o cualquiera de sus variantes)
    • herramientas de sincronización: rsync
  • Librerias extra:
    • libnet-ssleay-perl, libcrypt-ssleay-perl (para compatibilidad con Webmin)
    • dependencias para ayudar a algunos programas de software (en especial si se compilan desde fuentes): libstdc++5 y libstdc++6, etc.
  • etc

Configuración de Red

Dispositivos de Red (QEMU)

Interface MAC Address VLAN Parámetros
eth0 52:54:00:12:00:00 1 ifname=emulan1,setup_script=qemu-ifup.sh
eth1 52:54:00:12:00:09 9 mcast=230.0.0.1:1234

Configuraciones de red: /etc/network/interfaces:

 
Interface IP (virtual) IP (emulada) dispositivo (emulado)
eth0 10.0.0.2 10.0.0.1 emulan1
eth1 192.168.24.30 230.0.0.1 ninguno

Reglas de ruteo:

Destination         Gateway     Genmask        Flag     M   R   U  Iface
192.168.24.0/24     *           255.255.255.0  U        0   0   0  eth1
default             10.0.0.1    0.0.0.0        UG       0   0   0  eth0

Comandos necesarios:
route add default gw 10.0.0.1

Reglas de iptables (Host)

Asegurarse de tener activado el IP Forwarding:
echo “1” | sudo tee /proc/sys/net/ipv4/ip_forward

La siguiente sección asume los siguientes parámetros del host:

Interface de red eth0, IP: 192.168.1.1, METHOD=dhcp
Servidor DHCP deshabilitado
Servidor DNS deshabilitado
*nat
:OUTPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
# La siguiente regla hace MASQUERADEing y permite la 
# salida de conexiones a la red externa
# vlan-POSTROUTING
-A POSTROUTING -s 10.0.0.0/29 -j MASQUERADE
# Otras reglas por completar

Paso 2

Configurar DNS (temporal)

Con la configuración IP lista, hemos de asignar un DNS para conectarnos a inet y descargar las herramientas necesarias.

Simplemente chequeamos el DNS utilizado por el host (por ejemplo, 146.83.183.94) y lo cargamos al guest con la siguiente instrucción:
echo “nameserver numero_ip_del_dns ” | sudo tee /etc/resolv.conf

Probamos que es correcto, obviamente, haciendo ping:

 

Cargando paquetes de Apt-Get

Ahora podemos ejecutar apt-get update y luego instalamos con apt-get install los paquetes que necesitemos de la lista anterior, y cualquier otro que necesitemos.

Un ejemplo de la línea de comandos utilizada:

sudo apt-get install  iptraf traceroute tcptraceroute xprobe dnstracer dnsmaq sshfs libnet-ssleay-perl libcrypt-ssleay-perl libnetl links elinks

Paso 3

Seteando dnsmasq

Utilizando un puente SSH para sacar conexiones DNS

Reforzando el login por SSH