Tutorial Básico Iptables
Tabla de contenido:
- Cómo usar el comando ip
- Mostrar y modificar direcciones IP
- Mostrar información sobre todas las direcciones IP
- Mostrar información sobre una única interfaz de red
- Asignar direcciones IP a una interfaz
- Asigna múltiples direcciones IP a la misma interfaz
- Eliminar / Eliminar una dirección IP de la interfaz
- Mostrar y modificar interfaces de red
- Mostrar información sobre interfaces de red
- Alterar el estado de la interfaz ARRIBA / ABAJO
- Mostrar y alterar la tabla de enrutamiento
- Mostrar tabla de enrutamiento
- Agregar una nueva ruta
- Eliminar una ruta
- Conclusión
El comando
ip
es una herramienta poderosa para configurar interfaces de red que cualquier administrador de sistemas Linux debería conocer. Se puede usar para subir o bajar interfaces, asignar y eliminar direcciones y rutas, administrar caché ARP y mucho más.
En este tutorial, le mostraremos cómo usar el comando
ip
través de ejemplos prácticos y explicaciones detalladas de las opciones más comunes.
Cómo usar el comando ip
La utilidad
ip
forma parte del paquete iproute2 que se instala en todas las distribuciones modernas de Linux.
La sintaxis para el comando
ip
es la siguiente:
ip OBJECT COMMAND
OBJECT es el tipo de objeto que desea administrar. Los objetos (o subcomandos) más utilizados son:
-
link
(l
): muestra y modifica las interfaces de red.address
(a
): muestra y modifica las direcciones IP.route
(r
): muestra y modifica la tabla de enrutamiento.neigh
(n
): muestra y manipula objetos vecinos (tabla ARP).
El objeto se puede escribir en forma completa o abreviada (corta). Para mostrar una lista de comandos y argumentos para cada objeto, escriba
ip OBJECT help
. cada subcomando
Al configurar las interfaces de red, debe ejecutar los comandos como root o usuario con privilegios de sudo. De lo contrario, el comando imprimirá
RTNETLINK answers: Operation not permitted
Las configuraciones establecidas con el comando
ip
no son persistentes. Después de reiniciar el sistema, se pierden todos los cambios. Para la configuración permanente, debe editar los archivos de configuración específicos de la distribución o agregar los comandos a un script de inicio.
Mostrar y modificar direcciones IP
Cuando se opera con el objeto
addr
los comandos toman la siguiente forma:
ip addr ADDRESS dev IFNAME
Los COMANDOS más utilizados del objeto
addr
son:
show
,
add
y
del
.
Mostrar información sobre todas las direcciones IP
Para mostrar una lista de todas las interfaces de red y la dirección IP asociada, escriba el siguiente comando:
ip addr show
La salida se verá más o menos así:
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
Obtendrá el mismo resultado si escribe omite el comando
show
y escribe:
ip addr
.
Mostrar información sobre una única interfaz de red
Para obtener información sobre una interfaz de red específica, use
ip addr show dev
seguido del nombre del dispositivo. Por ejemplo, para consultar
eth0
, escribiría:
Asignar direcciones IP a una interfaz
Para asignar una dirección IP a una interfaz, use la siguiente sintaxis:
ip addr add ADDRESS dev IFNAME
Donde
IFNAME
es el nombre de la interfaz y
ADDRESS
es la dirección IP que desea asignar a la interfaz.
Para agregar la dirección
192.168.121.45
con máscara de red 24 al dispositivo
eth0
, escriba:
sudo ip address add 192.168.121.45/24 dev eth0
En caso de éxito, el comando no mostrará ningún resultado. Si la interfaz no existe, obtendrá
Cannot find device "eth0"
se
Cannot find device "eth0"
.
Asigna múltiples direcciones IP a la misma interfaz
Con
ip
, puede asignar múltiples direcciones a la misma interfaz. Por ejemplo:
sudo ip address add 192.168.121.241/24 dev eth0
sudo ip address add 192.168.121.45/24 dev eth0
Para confirmar que las IP están asignadas, escriba
ip -4 addr show dev eth0
o
ip -4 a show dev eth0
:
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever
Eliminar / Eliminar una dirección IP de la interfaz
La sintaxis para eliminar una dirección IP de una interfaz es la siguiente:
ip addr dev ADDRESS dev IFNAME
IFNAME es el nombre de la interfaz y ADDRESS es la dirección IP que desea eliminar de la interfaz.
Para eliminar la dirección
192.168.121.45/24
del dispositivo eth0, escriba:
sudo ip address del 192.168.121.45/24 dev eth0
Mostrar y modificar interfaces de red
Para administrar y ver el estado de las interfaces de red, use el objeto de
link
.
Los comandos más utilizados cuando se trabaja con los objetos de
link
son:
show
,
set
,
add
y
del
.
Mostrar información sobre interfaces de red
Para mostrar una lista de todas las interfaces de red, escriba el siguiente comando:
ip link show
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
A diferencia de
ip addr show
,
ip link show
no imprimirá información sobre las direcciones IP asociadas con el dispositivo.
Para obtener información sobre una interfaz de red específica, use
ip link show dev
seguido del nombre del dispositivo. Por ejemplo, para consultar
eth0
, escribiría:
ip link show dev eth0
2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
Alterar el estado de la interfaz ARRIBA / ABAJO
Para activar o desactivar las interfaces, utilice el
ip link set dev
seguido del nombre del dispositivo y el estado deseado:
ip link set dev {DEVICE} up
Por ejemplo, para poner en línea la interfaz
eth0
, debe escribir:
ip link set eth0 up
Y para traer si fuera de línea
Mostrar y alterar la tabla de enrutamiento
Para asignar, eliminar y mostrar la tabla de enrutamiento del núcleo, use el objeto de
route
. Los comandos más utilizados cuando se trabaja con los objetos de rutas son:
list
,
add
y
del
.
Mostrar tabla de enrutamiento
Para obtener una lista de las entradas de ruta del kernel, use uno de los siguientes comandos:
ip route ip route list ip route list SELECTOR
Cuando se usa sin un
SELECTOR
el comando enumerará todas las entradas de ruta en el núcleo:
ip route list
default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100
Para mostrar solo el enrutamiento de una red específica, por ejemplo,
172.17.0.0/16
, escribiría:
ip r list 172.17.0.0/16
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
Agregar una nueva ruta
Para agregar una nueva entrada a la tabla de enrutamiento, use el comando de
route add
seguido del nombre de la red o del dispositivo.
Agregue una ruta a 192.168.121.0/24 a través de la puerta de enlace en 192.168.121.1
ip route add 192.168.121.0/24 via 192.168.121.1
Agregue una ruta a 192.168.121.0/24 que se puede alcanzar en el dispositivo eth0.
ip route add 192.168.121.0/24 dev eth0
Para agregar una ruta predeterminada, use la palabra clave
default
. El siguiente comando agregará una ruta predeterminada a través de la puerta de enlace local
192.168.121.1
que se puede alcanzar en el dispositivo
eth0
.
ip route add default via 192.168.121.1 dev eth0
Eliminar una ruta
Para eliminar una entrada de la tabla de enrutamiento, use el comando
route add
. La sintaxis para eliminar una ruta es la misma que cuando agrega.
El siguiente comando eliminará la ruta predeterminada:
ip route del default
Eliminar una ruta para 192.168.121.0/24 a través de la puerta de enlace en 192.168.121.1
ip route add 192.168.121.0/24 via 192.168.121.1
Conclusión
A estas alturas ya debe tener una buena comprensión de cómo usar el comando
ip
Linux. Para obtener más información sobre las otras opciones de
ip
, visite la página de comando man ip o escriba
man ip
en su terminal.
Comando Echo en Linux con ejemplos
![Comando Echo en Linux con ejemplos Comando Echo en Linux con ejemplos](https://i.joecomp.com/bash/576/echo-command-linux-with-examples.jpg)
El comando echo es uno de los comandos más básicos y de uso más frecuente en Linux. Los argumentos pasados a echo se imprimen en la salida estándar.
Comando curl en linux con ejemplos
![Comando curl en linux con ejemplos Comando curl en linux con ejemplos](https://i.joecomp.com/curl/665/curl-command-linux-with-examples.jpg)
Curl es una utilidad de línea de comandos para transferir datos desde o hacia un servidor diseñado para funcionar sin interacción del usuario. En este tutorial, le mostraremos cómo usar la herramienta de rizo a través de ejemplos prácticos y explicaciones detalladas de las opciones de rizo más comunes.
Comando de corte de Linux con ejemplos
![Comando de corte de Linux con ejemplos Comando de corte de Linux con ejemplos](https://i.joecomp.com/cut/719/linux-cut-command-with-examples.jpg)
Cut es una utilidad de línea de comandos que le permite cortar partes de líneas de archivos específicos o datos canalizados e imprimir el resultado en la salida estándar. En este tutorial, le mostraremos cómo usar el comando de corte de Linux a través de ejemplos prácticos y explicaciones detalladas de las opciones de corte más comunes.