Saltar la navegación

Configuración a bajo nivel

Es posible hacer una configuración de la red con los comandos ifconfig, route e ip, es lo que se denomina configuración a bajo nivel, pero el inconveniente de este tipo configuraciones es que no se mantienen al reiniciar el sistema, a menos que se ejecuten desde un script en el arranque.

Los comandos ifconfig y route (paquete net-tools) están hoy en día en desuso y han sido sustituidos por el comando ip (paquete iproute).

Usaremos estos comandos para obtener información de la red y no para configurarla salvo en situaciones especiales como por ejemplo en el caso del mapeo lógico de un dispositivo de red.

Para ver la configuración de las interfaces de red activas ejecutamos:

# ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:28:42:d2  
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe28:42d2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2933 errors:0 dropped:0 overruns:0 frame:0
          TX packets:837 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:657635 (642.2 KiB)  TX bytes:126005 (123.0 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:215 errors:0 dropped:0 overruns:0 frame:0
          TX packets:215 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:14304 (13.9 KiB)  TX bytes:14304 (13.9 KiB)

Se podrían ver todas las interfaces de red que tiene el sistema, tanto las activas (llevan la palabra UP) como las inactivas (no llevan la palabra UP), para lo cual, ejecutamos:

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 08:00:27:28:42:d2  
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe28:42d2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:44 errors:0 dropped:0 overruns:0 frame:0
          TX packets:83 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:13149 (12.8 KiB)  TX bytes:10400 (10.1 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:37:d8:06  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:720 (720.0 B)  TX bytes:720 (720.0 B) 

Podemos ver una estadística de la información enviada y recibida por las interfaces activas o todas:

# ifconfig -s
Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500 0        53      0      0 0            83      0      0      0 BMRU
lo        16436 0        12      0      0 0            12      0      0      0 LRU
# ifconfig -a -s
Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500 0        55      0      0 0            85      0      0      0 BMRU
eth1       1500 0         0      0      0 0             0      0      0      0 BM
lo        16436 0        12      0      0 0            12      0      0      0 LRU

Podemos ver los datos de una interfaz concreta:

# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 08:00:27:28:42:d2  
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe28:42d2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:62 errors:0 dropped:0 overruns:0 frame:0
          TX packets:85 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16187 (15.8 KiB)  TX bytes:10582 (10.3 KiB)

# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 08:00:27:37:d8:06  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Para mostrar la tabla arp usamos el comando arp:

# arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.1.1              ether   38:72:c0:b5:1f:23   C                     eth0
# arp -a
? (192.168.1.1) at 38:72:c0:b5:1f:23 [ether] on eth0

La opción -n hace que se muestren todos los datos de forma numérica y no se intente hacer traducción de IP a nombre; esto hace, generalmente, que el comando funcione más rápido que obviando la opción.

La opción -a muestra la misma información con otro tipo de formato de salida.

Para mostrar las tablas de enrutamiento usamos el comando route:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

La opción -n tiene la misma función que en el comando arp.

También se puede utilizar la orden ip para obtener la información de la red. Así, para ver la lista de tarjetas que hay instaladas en el sistema, con su dirección MAC y si están activas o no, ejecutamos:

# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN mode DEFAULT
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 08:00:27:28:42:d2 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
    link/ether 08:00:27:37:d8:06 brd ff:ff:ff:ff:ff:ff

El parámetro show puede suprimirse, en la orden anterior y en las sucesivas, se asume por defecto.

Para ver las direcciones IP de las tarjetas:

# ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:28:42:d2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
    inet6 fe80::a00:27ff:fe28:42d2/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 08:00:27:37:d8:06 brd ff:ff:ff:ff:ff:ff

Para ver la tabla arp:

# ip neighbour show
192.168.1.1 dev eth0 lladdr 38:72:c0:b5:1f:23 REACHABLE

Para ver la tabla de enrutamiento:

# ip route show
default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.100

ANEXO:

En este anexo se va a resumir cómo se pueden utilizar los comandos ifconfig e ip para configurar las tarjetas de red.

La sintaxis resumida de ifconfig para asignar una IP a un tarjeta de red es la siguiente:

ifconfig intefaz dirección-ip netmask máscara [up]

Si se especifica up al final del comando, entonces la tarjeta se levanta a la vez que se le asigna la dirección IP. Por ejemplo:

# ifconfig eth0 192.168.0.2 netmask 255.255.255.0 up

Con los siguientes comandos se activa o desactiva la tarjeta de red:

ifconfig interfaz  { up | down }

# ifconfig eth0 down
# ifconfig eth0 up

El comando ip realiza las mismas funciones que los comandos ifconfig, route y arp a la vez. Para poner una dirección IP, la sintaxis resumida sería:

ip address add dirección-ip/prefijo dev interfaz

# ip address add 192.168.0.2/24 dev eth0

Si queremos cambiar de IP es necesario borrar previamente la dirección anterior para no asignar dos direcciones. La sintaxis para borrar una dirección IP es:

ip address del dirección-ip/prefijo dev interfaz

# ip address del 192.168.0.2/24 dev eth0

Por último falta ver la sintaxis del comando ip para activar y desactivar la tarjeta de red:

ip link set interfaz  { up | down }

# ip link set eth0 down
# ip link set eth0 up

 

 

Licencia: licencia de software libre GPL