Você está na página 1de 6

IFCONFIG

El comando ifconfig es utilizado para configurar las interfaces de red residentes en el


kernel. El mismo es utilizado en el momento del booteo para inicializar todas las interfaces
de red necesarias. Luego de esto, ifconfig es necesario únicamente en circunstancias de
debug o cuando una puesta a punto del sistema es necesaria.
Un ejemplo, puede ser reconfigurar una placa de red del equipo ya sea para cambiar
cualquiera de sus parámetros para prueba o cambio definitivo.

Si al comando no se le entrega ningún argumento, mostrara el estado de las interfaces que


están activas:

root@hostname:~> ifconfig
eth0 Link encap:Ethernet HWaddr 00:01:02:7A:D1:84
inet addr:172.16.254.53 Bcast:172.16.254.127 Mask:255.255.255.128
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9140399 errors:0 dropped:0 overruns:112 frame:0
TX packets:8137915 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:916481396 (874.0 Mb) TX bytes:430104288 (410.1 Mb)
Interrupt:5 Base address:0x2000

lo Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:220 errors:0 dropped:0 overruns:0 frame:0
TX packets:220 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:17878 (17.4 Kb) TX bytes:17878 (17.4 Kb)

Si como argumento se pasa solamente el nombre del dispositivo, el comando indicara el


estado de esa interfase en particular.

root@hostname:~> ifconfig eth0


eth0 Link encap:Ethernet HWaddr 00:01:02:7A:D1:84
inet addr:172.16.254.53 Bcast:172.16.254.127 Mask:255.255.255.128
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9141022 errors:0 dropped:0 overruns:112 frame:0
TX packets:8138142 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:916539114 (874.0 Mb) TX bytes:430134275 (410.2 Mb)
Interrupt:5 Base address:0x2000
La información que podemos ver es lo siguiente
Eth0: es el dispositivo físico de red, eth0, 1 , 2 … n para los dispositivos ethernet.
Link Encap: Es la encapsulación capa 2 que va a tener el trafico que maneje esta interfase.
HWaddr: Es la dirección MAC (CAPA2 - Media Access Control) de la interfase, esta es la
dirección física, real, univoca por la cual se producen todas las conexiones en esta placa.
Inet addr: Es la dirección IP que tiene configurada dicha placa
Bcast: Es la dirección de Broadcast correspondiente a la red que tiene esa maquina
configurada.
Mask: Es la mascara de red especificada para esa subset
UP: El estado del link test
BROADCAST: Justamente que dicha placa esta escuchando conexiones broadcast.
RUNNING: nada para agregar =) .
MULTICAST: En este caso indica que esta escuchando conexiones Multicast también.
MTU: (maximum transmission unit) el cual es el tamaño máximo del paquete IP que va a
transmitir esta placa, este valor se utiliza para el control de fragmentación sobre la interfase.
METRIC: Es la métrica de ruteo que tiene dicha placa, 1 significa que hay un solo hop o
salto hacia la ruta especifica para esa placa. (se que suena complicado, o sea, para que sea
mas fácil, cuantos saltos tiene que dar un paquete para llegar a la misma placa si es que
salen de la placa Æ 1!! )
RX=recepcion TX= transmisión
Interrupt: es el irq que tiene asignado esa placa
Base Address: es la dirección de memoria asignada a ese dispositivo.
Si el modificador es –a , el programa indicara la configuración de todas las interfaces, estén
o no activas.

root@hostname:~> ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:01:02:7A:D1:84
inet addr:172.16.254.53 Bcast:172.16.254.127 Mask:255.255.255.128
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9141426 errors:0 dropped:0 overruns:112 frame:0
TX packets:8138206 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:916567745 (874.1 Mb) TX bytes:430141830 (410.2 Mb)
Interrupt:5 Base address:0x2000

eth1 Link encap:Ethernet HWaddr 00:E0:7D:9E:65:EB


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:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:9 Base address:0x1400

lo Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:220 errors:0 dropped:0 overruns:0 frame:0
TX packets:220 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:17878 (17.4 Kb) TX bytes:17878 (17.4 Kb)
Todos los modificadores que no sean los expresados van a configurar a la interfase. Estos
modificadores disponibles son

root@hostname:~> ifconfig --help


Usage:
ifconfig [-a] [-i] [-v] [-s] <interface> [[<AF>] <address>]
[add <address>[/<prefixlen>]]
[del <address>[/<prefixlen>]]
[[-]broadcast [<address>]] [[-]pointopoint [<address>]]
[netmask <address>] [dstaddr <address>] [tunnel <address>]
[outfill <NN>] [keepalive <NN>]
[hw <HW> <address>] [metric <NN>] [mtu <NN>]
[[-]trailers] [[-]arp] [[-]allmulti]
[multicast] [[-]promisc]
[mem_start <NN>] [io_addr <NN>] [irq <NN>] [media <type>]
[txqueuelen <NN>]
[[-]dynamic]
[up|down] ...

<HW>=Hardware Type.
List of possible hardware types:
loop (Local Loopback) slip (Serial Line IP) cslip (VJ Serial Line IP)
slip6 (6-bit Serial Line IP) cslip6 (VJ 6-bit Serial Line IP) adaptive (Adaptive
Serial Line IP)
strip (Metricom Starmode IP) ash (Ash) ether (Ethernet)
tr (16/4 Mbps Token Ring) tr (16/4 Mbps Token Ring (New)) ax25 (AMPR
AX.25)
netrom (AMPR NET/ROM) rose (AMPR ROSE) tunnel (IPIP Tunnel)
ppp (Point-to-Point Protocol) hdlc ((Cisco)-HDLC) lapb (LAPB)
arcnet (ARCnet) dlci (Frame Relay DLCI) frad (Frame Relay Access Device)
sit (IPv6-in-IPv4) fddi (Fiber Distributed Data Interface) hippi (HIPPI)
irda (IrLAP) ec (Econet) x25 (generic X.25)
<AF>=Address family. Default: inet
List of possible address families:
unix (UNIX Domain) inet (DARPA Internet) inet6 (IPv6)
ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE)
ipx (Novell IPX) ddp (Appletalk DDP) ec (Econet)
ash (Ash) x25 (CCITT X.25)
Y algunos ejemplos de uso son los siguientes:

Nota: Todos los cambios que se hagan de forma manual con este comando, se perderán en
el momento del booteo del equipo, esto es debido a que el momento del booteo, el kernel
lee de un archivo (Ej. en redhat linux: /etc/sysconfig/network-scripts/ifcfg-ethX-up) la
configuración especifica para esa placa, lo cual significa que en caso de que sea permanente
el cambio, hay que cambiar o bien esos files a mano o con algunas de las tantas
herramientas que tiene el sistema a tal fin.

Por ejemplo, configurar la placa eth0 para la ip 10.10.10.1 con mascara de red /24
(255.255.255.0)

Ifconfig eth0 10.10.10.1 netmask 255.255.255.0 up

Esto va a configurar la placa de red de la siguiente manera.

Eth0 Link encap:Ethernet HWaddr 00:E0:7D:9E:65:EB


inet addr:10.10.10.1 Bcast:10.255.255.255 Mask:255.255.255.0
UP BROADCAST RUNNING 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:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:9 Base address:0x1400

ATENCION!!!: Podemos ver que si bien la placa se configuro con los parámetros que
nosotros elegimos, pero el sistema, de forma automática, esta configurado para configurar
las direcciones con las clases asociadas en cuanto a direccionamiento IP se refiere….

Recordatorio
Clase A,B,C,D,E

10.10.10.1 esta dentro de la clase A, lo cual seria algo así como un /8 (mascara 255.0.0.0) y
si vemos el broadcast de esa dirección configurada, esta justamente de esa forma (bcast:
10.255.255.255) cuando nosotros la quisimos configurar con mascara 255.255.255.0 y el
broadcast tendría que ser 10.10.10.255.

Todo este lío que significa, si una red es pequeña y estamos configurando de esta manera,
no va a haber problemas con esto (que realmente importen) ahora si la red ya es mas grande
y yo mando un broadcast 10.255.255.255 lo estoy mandando a 16581375 direcciones IP en
lugar de las 255 que yo configure, todo eso generaría un trafico de broadcast muy grande y
se estarían desaprovechando los recursos de red disponibles.
Como se soluciona esto???
Cuando se configuren subnets que tengan direcciones que pertenezcan a otra clase,
especificando la dirección de broadcast. O sea que el comando de arriba de manera correcta
seria:
Ifconfig eth0 10.10.10.1 netmask 255.255.255.0 broadcast 10.10.10.255 up

Y nos daría lo siguiente

root@hostname:~> ifconfig eth1


eth0 Link encap:Ethernet HWaddr 00:E0:7D:9E:65:EB
inet addr:10.10.10.1 Bcast:10.10.10.255 Mask:255.255.255.0
UP BROADCAST RUNNING 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:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:9 Base address:0x1400

Para detener la placa simplemente lo que se ejecuta es

Ifconfig eth0 down

Lo único que falta es la interfase lo (loopback), esta interfase no es física, sino que es lógica
dentro del equipo y tiene la dirección IP reservada 127.0.0.1/8, la finalidad de esta interfase
es la de permitir hacer conexiones contra uno mismo, o sea, desde una computadora a la
misma computadora. Existen varias razones por las cuales es necesario hacer esto, la mas
fácil, cuando queremos probar algo que esta corriendo nuestra maquina (con solo ejecutar
telnet localhost y ver a que dirección apunta la conexión ya se ve una utilidad).

Você também pode gostar