Saltar al contenido

Interfaces en Linux

May 27, 2008

Interfaces en Linux:

Para cuestiones de configurar o dar mantenimiento a una red es necesario el saber como manejar las interfaces por las que nuestra computadora se conecta a internet, esta información se puede obtener mediante la utilización del comando ifconfig y con el mismo comando podemos realizar varias cosas interesantes.

ifconfig [interface]
ifconfig interface [aftype] options | address …

Ifconfig se usa para configurar las kernel-resident network interfaces. Se usa en el tiempo de booteo para instalar las interfaces como sea necesario. Si no se le pasan argumentos, ifconfig muestra el status de las interfaces que estén activas. Si se pasa solo un argumento de interface, muestra el status de dicha interface solamente, y si se agrega el argumento -a muestra el status de todas las interfaces, incluso de las que estén down.

Opciones de ifconfig

interface
The name of the interface. This is usually a driver name followed by a unit number, for example eth0 for the first Ethernet interface.
up
This flag causes the interface to be activated. It is implicitly specified if an address is assigned to the interface.
down
This flag causes the driver for this interface to be shut down.
[-]arp
Enable or disable the use of the ARP protocol on this interface.
[-]promisc
Enable or disable the promiscuous mode of the interface. If selected, all packets on the network will be received by the interface.
[-]allmulti
Enable or disable all-multicast mode. If selected, all multicast packets on the network will be received by the interface.
metric N
This parameter sets the interface metric.
mtu N
This parameter sets the Maximum Transfer Unit (MTU) of an interface.
dstaddr addr
Set the remote IP address for a point-to-point link (such as PPP). This keyword is now obsolete; use the pointopoint keyword instead.
netmask addr
Set the IP network mask for this interface. This value defaults to the usual class A, B or C network mask (as derived from the interface IP address), but it can be set to any value.
add addr/prefixlen
Add an IPv6 address to an interface.
del addr/prefixlen
Remove an IPv6 address from an interface.
tunnel aa.bb.cc.dd
Create a new SIT (IPv6-in-IPv4) device, tunnelling to the given destination.
irq addr
Set the interrupt line used by this device. Not all devices can dynamically change their IRQ setting.
io_addr addr
Set the start address in I/O space for this device.
mem_start addr
Set the start address for shared memory used by this device. Only a few devices need this.
media type
Set the physical port or medium type to be used by the device. Not all devices can change this setting, and those that can vary in what values they support. Typical values for type are 10base2 (thin Ethernet), 10baseT (twisted-pair 10Mbps Ethernet), AUI (external transceiver) and so on. The special medium type of auto can be used to tell the driver to auto-sense the media. Again, not all drivers can do this.
[-]broadcast [addr]
If the address argument is given, set the protocol broadcast address for this interface. Otherwise, set (or clear) the IFF_BROADCAST flag for the interface.
[-]pointopoint [addr]
This keyword enables the point-to-point mode of an interface, meaning that it is a direct link between two machines with nobody else listening on it.
If the address argument is also given, set the protocol address of the other side of the link, just like the obsolete dstaddr keyword does. Otherwise, set or clear the IFF_POINTOPOINT flag for the interface.
hw class address
Set the hardware address of this interface, if the device driver supports this operation. The keyword must be followed by the name of the hardware class and the printable ASCII equivalent of the hardware address. Hardware classes currently supported include ether (Ethernet), ax25 (AMPR AX.25), ARCnet and netrom (AMPR NET/ROM).
multicast
Set the multicast flag on the interface. This should not normally be needed as the drivers set the flag correctly themselves.
address
The IP address to be assigned to this interface.
txqueuelen length
Set the length of the transmit queue of the device. It is useful to set this to small values for slower devices with a high latency (modem links, ISDN) to prevent fast bulk transfers from disturbing interactive traffic like telnet too much.

Por ejemplo:

Si queremos dar de baja una interfaz:

# ifconfig eth0 down

O si queremos dar de alta una interfaz:

# ifconfig eth0 up

Si queremos asignar una dirección ip estática:

Primero verificar con ifconfig el estado de la interfaz a la que queramos asignarle la ip, necesitamos que esté down, si no lo está hay que darla de baja. Una vez hecho esto hacemos lo siguiente:

# ifconfig eth0 192.168.10.12 netmask 255.255.255.0 up

Nos encontramos con los siguientes tipos de interfaces a la hora de hacer ifconfig (sin argumentos):

lo: Interfaz de loopback

eth0: Primera interfaz de tarjeta ethernet.

wlan0: Primera interfaz de red inalámbrica.

Si queremos asignar varias direcciones ip a una interfaz utilizamos alias:

# ifconfig eth0 XXX.XXX.XXX.XXX netmask 255.255.255.0

# ifconfig eth0:0 192.168.10.12 netmask 255.255.255.0

# ifconfig eth0:1 192.168.10.14 netmask 255.255.255.0

Ahora bien podemos hacer el uso de macros para detener, activar o reiniciar el servicio de red (esto es hacerlo directo al daemon). Las macros se llaman con el nombre y con una opcion:

# service network restart

La macro es un script ya hecho que llama los parametros de la red y cuyo argumento en este caso fue “restart”.

Comandos de interés en esta clase:

# cat (concatenar, lee algo y lo pasa a otro lado)

# cat ifcfg-eth0 (se puede configurar con un editor de texto)

En la aplicacion de network cambiamos a asignacion automatica o con editor:

vi ifcfg-eth0

x -> borrar

i -> insert

para salir -> esc :q!

# man numerodepagina comando -> (proporciona la página del manual definida en numerodepagina para el servicio definido en comando, en vez de comando se escribe por ejemplo: ifconfig, y no es necesario introducir el numero de pagina).

Manejo de manual:

f -> forward

b -> backward

Enter -> linea por linea

q -> quit

# script -> toma nota de lo que se está realizando en consola.

Servicio web:

# service httpd status

# service httpd start

# service httpd stop

# uname -> nos da información del sistema

# uname -r -> nos da la versión del kernel

# uname -m -> nos da el tipo de procesador (revisar en el manual de uname las diferentes opciones pues no estoy muy seguro de esta última)

# uptime -> nos dice cuanto tiempo ha estado activa la máquina

# date -> nos da la fecha configurada en la máquina

date mes dia hora minutos año

# whoami -> nos dice que usuario soy, o está loggeado actualmente

# last -> ??

# adduser nombredeusuario -> Agrega una cuenta de usuario

# passwd nombredeusuario -> Establece la contraseña para el usuario definido en nombredeusuario

# userdel laboratorio-> Elimina una cuenta de usuario

Para dar de baja o apagar el sistema es recomendable hacer el siguiente procedimiento:

# sync (todo lo temporal lo baja al disco- hardware adaptation layer)

# sync

# sync

# shutdown -h now

Bibliografía:

Tutorial Linux: Linux Networking Administration

http://www.yolinux.com/TUTORIALS/LinuxTutorialNetworking.html

ifconfig(8) Linux man page

http://linux.die.net/man/8/ifconfig

No comments yet

Deja un comentario