====== Debian: comandos de red y Samba ======
**Versión:** V_26_11
===== Comandos básicos y administración de red en Debian =====
^**Área** ^**Comando** ^**Para qué sirve** ^**Ejemplo breve** ^
|Sistema |whoami |Muestra el usuario actual. |whoami |
|Sistema |hostnamectl |Muestra o cambia el nombre del equipo. |hostnamectl |
|Red |ip -br addr |Resume interfaces y direcciones IP. |ip -br addr |
|Red |ip route |Muestra rutas, incluida la puerta de enlace. |ip route |
|Red |ping -c 4 IP |Prueba conectividad IP controlada. |ping -c 4 192.168.50.10 |
|Red |nmcli device status |Relaciona interfaces y perfiles NetworkManager.|nmcli device status |
|Diagnóstico|ip neigh |Muestra vecinos ARP aprendidos. |ip neigh show |
|Diagnóstico|ss -tulpen |Muestra puertos en escucha y procesos. |sudo ss -tulpen |
|Diagnóstico|getent hosts nombre |Comprueba resolución de nombres. |getent hosts deb.debian.org|
|Servicios |systemctl status servicio|Consulta el estado de un servicio. |systemctl status ssh |
|Usuarios |usermod |Añade el usuario al grupo sudo. |usermod -aG sudo jose |
|Paquetes |apt install paquete |Instala software desde repositorios. |sudo apt install apache2 |
====== Cambios temporales de interfaz y direccionamiento ======
La interfaz enp0s8 se empleará solo para esta prueba.
Se renombrará temporalmente como “asir” y se configurará con la dirección 192.168.60.10/24. La red debe disponer de un router real con dirección 192.168.60.1. Se usarán los DNS 1.1.1.1 y 8.8.8.8.
===== Ejecución paso a paso =====
1. Comprobar las interfaces disponibles y anotar la dirección MAC de enp0s8.
ip -br link
ip -br addr
ip link show enp0s8
La salida link/ether contiene la MAC.
2. Desconectar el perfil que pudiera estar activo y renombrar la interfaz solo durante esta sesión.
sudo nmcli device disconnect enp0s8
sudo ip link set enp0s8 down
sudo ip link set enp0s8 name asir
sudo ip link set asir up
ip -br link
El cambio se ve inmediatamente con ip -br link, pero se perderá al reiniciar.
NetworkManager puede volver a aplicar un perfil si no se ha desconectado previamente.
3. Asignar una IP, una ruta por defecto de prueba y DNS temporales.
sudo ip addr flush dev asir
sudo ip addr add 192.168.60.10/24 dev asir
sudo ip route replace default via 192.168.60.1 dev asir metric 600
ip -br addr show asir
ip route
ip solo configura dirección, estado y rutas; no configura DNS.
Si systemd-resolved está activo, puedes asignar DNS a la interfaz con este comando. En otros casos, usa el gestor que controle /etc/resolv.conf.
sudo resolvectl dns asir 1.1.1.1 8.8.8.8
resolvectl status asir
El valor metric 600 deja esta ruta por detrás de la ruta NAT, que se configurará con métrica 100. Así se puede observar una puerta de enlace adicional sin perder la salida habitual de la máquina virtual.
4. Volver al estado inicial. La forma más segura es reiniciar la máquina virtual. El reinicio descarta el nombre temporal, la IP y la ruta.
sudo reboot
Comprobación: después de reiniciar, enp0s8 vuelve a aparecer con su nombre original
====== Entornos virtuales en VirtualBox ======
===== Preparar cuatro adaptadores para comparar métodos de configuración =====
===== Diseño de la máquina virtual =====
Con la máquina apagada, abre Configuración, Red en VirtualBox. Habilita los cuatro adaptadores y marca Cable conectado en todos ellos. Los nombres enp0s3, enp0s8, enp0s9 y enp0s10 son habituales en VirtualBox, pero deben verificarse en cada máquina.
===== Ejecución paso a paso =====
- Crear las redes internas. En el desplegable Conectado a selecciona Red interna
- Las máquinas que deban comunicarse entre sí deben usar el mismo nombre de red interna.
- Arrancar Debian e identificar las interfaces y las rutas. La interfaz NAT debe ser inicialmente la única con ruta por defecto.
ip -br link
ip -br addr
ip route
nmcli device status
Aunque enp0s8, enp0s9 y enp0s10 aparezcan DOWN antes de configurarlas, es normal. Se activarán al asignar su configuración con el gestor correspondiente.
Si una interfaz aparece sin “conexión” no tiene aún un perfil de NetworkManager asignado. Lo podemos crear por ejemplo para enp0s8
sudo nmcli connection add type ethernet \
ifname enp0s8 \
con-name "practicas" \
ipv4.method auto \
connection.autoconnect no
Para comprobar que existe, aunque esté desconectada
nmcli connection show
nmcli -f connection.id,connection.interface-name connection show "practicas"
activar la conexión
sudo nmcli connection up "practicas"
desactivar la conexión
sudo nmcli connection down "practicas"
también podemos actuar directamente sobre el dispositivo y no sobre la conexión
sudo nmcli device connect enp0s8
sudo nmcli device disconnect enp0s8
Renombrar las cuatro interfaces de forma persistente
====== Configuración persistente y DHCP con NetworkManager ======
===== Configuración estática persistente =====
sudo nmcli connection modify "practicas" \
ipv4.method manual \
ipv4.addresses "192.168.60.10/24" \
ipv4.gateway "192.168.60.1" \
ipv4.dns "1.1.1.1 8.8.8.8" \
ipv4.ignore-auto-dns yes \
ipv4.never-default no \
ipv4.route-metric 600
sudo nmcli connection up "practicas"
ip -br addr show enp0s8
ip route
nmcli device show enp0s8
===== Volver a DHCP =====
sudo nmcli connection modify "practicas" \
ipv4.method auto \
ipv4.addresses "" \
ipv4.gateway "" \
ipv4.dns "" \
ipv4.ignore-auto-dns no \
ipv4.never-default yes
sudo nmcli connection down "practicas"
sudo nmcli connection up "practicas"
ip -br addr show enp0s8
nmcli device show enp0s8
====== Configuración persistente y DHCP con systemd networkd ======
Antes de empezar, confirma que NetworkManager la muestra como unmanaged.
===== Configuración estática persistente =====
sudo nano /etc/systemd/network/20-netd0.network
[Match]
Name=netd0
[Network]
Address=192.168.61.10/24
DNS=1.1.1.1
DNS=8.8.8.8
[Route]
Gateway=192.168.61.1
Metric=600
sudo systemctl enable --now systemd-networkd
sudo networkctl reload
sudo networkctl reconfigure netd0
ip -br addr show netd0
ip route
networkctl status netd0
===== Volver a DHCP =====
sudo nano /etc/systemd/network/20-netd0.network
[Match]
Name=netd0
[Network]
DHCP=yes
[DHCPv4]
UseDNS=yes
RouteMetric=600
sudo networkctl reload
sudo networkctl reconfigure netd0
ip -br addr show netd0
ip route
networkctl status netd0
DHCP=yes solicita la dirección, el prefijo, la puerta de enlace y los DNS. Si la red red-networkd no tiene servidor DHCP, la interfaz no obtendrá una configuración IPv4 por DHCP.
====== Configuración persistente y DHCP con ifupdown ======
Objetivo: Configurar enp0s10 desde /etc/network/interfaces.
===== Preparación =====
sudo apt update
sudo apt install ifupdown resolvconf
El paquete resolvconf permite que la directiva dns-nameservers actualice los servidores DNS. No se debe declarar en /etc/network/interfaces ninguna interfaz que esté administrada por NetworkManager.
===== Configuración estática persistente =====
Añade al final de /etc/network/interfaces, sin borrar la configuración de loopback:
auto enp0s10
iface enp0s10 inet static
address 192.168.62.10
netmask 255.255.255.0
gateway 192.168.62.1
dns-nameservers 1.1.1.1 8.8.8.8
metric 600
sudo ifup enp0s10
# Si necesitas forzar la desactivación: sudo ifdown --force enp0s10
ip -br addr show enp0s10
ip route
resolvconf -l
===== Volver a DHCP =====
Sustituye el bloque estático anterior por este otro en /etc/network/interfaces:
auto enp0s10
iface enp0s10 inet dhcp
metric 600
sudo ifdown enp0s10
sudo ifup enp0s10
ip -br addr show enp0s10
ip route
resolvconf -l