En los sistemas FreeBSD, la herramienta ifconfig
se utiliza para asignar una dirección a una interfaz de red y/o configurar sus parámetros. Esta herramienta se utiliza durante el inicio del sistema para definir las direcciones IP de cada interfaz de red presente. Pero también puede ser utilizada luego para redefinir o modificar la dirección IP de una interfaz de red u otro parámetro. Este artículo explica cómo hacerlo.
En este ejemplo, al momento de iniciar el sistema la red no fue configurada a causa de un fallo en el servidor DHCP:
root@hal9000:~ # ifconfig em0 em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO> ether 6c:69:6e:75:78:69 nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> media: Ethernet autoselect (1000baseT <full-duplex>) status: active
Configurar la dirección IP
Para configurar la dirección IP de una interfaz de red en FreeBSD, ejecutando comandos (sin editar archivos de configuración), se debe utilizar el comando ifconfig
pasando como parámetro el nombre de dispositivo de la interfaz de red (por ejemplo "em0") y luego la palabra clave "inet" junto con la dirección IP y máscara. Por ejemplo:
root@hal9000:~ # ifconfig em0 inet 192.168.100.101/24
Al ejecutar ifconfig em0
nuevamente, se observa que aparece la línea "inet" con la dirección IP correctamente configurada:
root@hal9000:~ # ifconfig em0 em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO> ether 6c:69:6e:75:78:69 inet 192.168.100.101 netmask 0xffffff00 broadcast 192.168.100.255 nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> media: Ethernet autoselect (1000baseT <full-duplex>) status: active
Notar cómo la máscara de red (en este ejemplo /24
) está expresada en formato hexadecimal, lo cual es mucho más legible que el formato decimal, pues los dígitos hexadecimales se traducen directamente a bits (no así en el caso de la base decimal).
Configurar la puerta de enlace por defecto
Luego de configurar la dirección IP será necesario indicar una puerta de enlace (gateway) de salida por defecto. Tarea que comúnmente realiza el cliente DHCP de acuerdo a la respuesta del servidor DHCP.
Inicialmente no hay rutas cargadas, por ende no es posible enviar paquetes hacia ningún destino fuera de la red local ("192.168.100.0/24"):
root@hal9000:~ # route show 0.0.0.0/0 route: route has not been found
En este caso de ejemplo, la puerta de enlace por defecto se encuentra en la dirección IP "192.168.100.1". Para configurarla correctamente como ruta por defecto, es necesario utilizar el comando route
. La ruta por defecto se especifica mediante "0.0.0.0/0":
root@hal9000:~ # route add -net 0.0.0.0/0 192.168.100.1 add net 0.0.0.0: gateway 192.168.100.1
Inmediatamente se observa que la ruta está cargada en la tabla del kernel:
root@hal9000:~ # route show 0.0.0.0/0 route to: default destination: default mask: default gateway: 192.168.100.1 fib: 0 interface: em0 flags: <UP,GATEWAY,DONE,STATIC> recvpipe sendpipe ssthresh rtt,msec mtu weight expire 0 0 0 0 1500 1 0
En este punto es posible verificar el acceso a Internet utilizando ping
o traceroute
.
Referencias
man ifconfig man route man ping man traceroute