Usando las utilidades de red traceroute, profundice en CentOS

El protocolo de configuración dinámica de host es un protocolo de red que se utiliza para distribuir dinámicamente parámetros de configuración de red, como direcciones IP, puerta de enlace y DNS para interfaces de red. El servidor DHCP asigna direcciones IP automáticamente a todos los sistemas, por lo que el administrador del sistema no necesita asignar direcciones IP manualmente a las máquinas cliente en la red. DHCP es la mejor opción para entornos más grandes y admite miles de sistemas.

Ambiente

Asegúrese de tener solo un servidor DHCP en su entorno. Si tiene un enrutador/conmutador que proporciona la funcionalidad de DHCP, entonces debe desactivarlo.

  1. Servidor mínimo CentOS 7 de 64 bits (servidor DHCP) O Ubuntu 18.04 /16.04 / Debian 9 de 64 bits (servidor DHCP)
  2. Servidor mínimo CentOS 7 de 64 bits (cliente DHCP) O escritorio Ubuntu 18.04/16.04 (cliente DHCP)

Nota: Debe asignar una dirección IP estática a su servidor DHCP.

Instalar y configurar el servidor DHCP en CentOS 7

Primero, veamos cómo instalar y configurar el servidor DHCP en CentOS 7 de 64 bits. También debería funcionar en CentOS 6.x y otras versiones anteriores.

# yum instalar dhcp

Una vez instalados los paquetes, copie el archivo de configuración de muestra al directorio /etc/dhcp.

# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

Ahora, edite el archivo dhcpd.conf.

# vi /etc/dhcp/dhcpd.conf

[...] # Especificar nombre de dominio#Puerta de enlace predeterminada

192.168.12.110

# systemctl reinicia dhcpd # systemctl habilita dhcpd

Si tiene algún problema al reiniciar el servicio DHCP, considere actualizar el contexto SELinux o .

/sbin/restorecon -v /etc/dhcp/dhcpd.conf

Eso es todo. Ahora, salte a la sección " " y configure sus clientes para obtener direcciones IP automáticamente del servidor DHCP.

Instalar y configurar el servidor DHCP en Ubuntu 18.04/16.04/Debian 9

Primero, veamos cómo instalar y configurar el servidor DHCP en Ubuntu 14.04. También debería funcionar en Ubuntu 15.04/14.10/13.04/13.10 y otras versiones anteriores.

Instale el servidor y el cliente DHCP usando el siguiente comando.

$ sudo apt-get install isc-dhcp-server

Una vez instalados los paquetes, tenemos que asignar en qué interfaces debe estar el servidor DHCP ( dhcpd) atender solicitudes DHCP. En nuestro caso, tengo solo una interfaz en mi sistema ( eth0), por lo que asignaremos eth0.

Editar archivo /etc/default/isc-dhcp-servidor.

$ sudo nano /etc/default/isc-dhcp-server

Mencionar eth0 en el archivo.

# Separe múltiples interfaces con espacios, p.e. "eth0 eth1". INTERFACES="eth0"

Ahora, edite el archivo dhcpd.conf,

$ sudo nano /etc/dhcp/dhcpd.conf

Realice los cambios como se muestra a continuación.

Defina la subred, el rango de direcciones IP, el dominio y los servidores de nombres de dominio como se muestra a continuación:

[...] # Configurar subred e iprange subred 192.168.12.0 máscara de red 255.255.255.0 (rango 192.168.12.100 192.168.12.200; # Especifique la IP del servidor DNS y la IP del servidor DNS adicional opción servidores de nombres de dominio 8.8.8.8, 8.8.4.4; # Especificar nombre de dominio opción nombre de dominio "itzgeek.local"; #Puerta de enlace predeterminada enrutadores opcionales 192.168.12.2; opción dirección de transmisión 192.168.12.255; # Especificar el tiempo de arrendamiento predeterminado y máximo tiempo de arrendamiento predeterminado 600; tiempo máximo de arrendamiento 7200; ) [...]

Si desea asignar una dirección IP fija a su cliente, debe ingresar su ID MAC y la dirección IP en la siguiente estrofa. Por ejemplo, para asignar una dirección IP fija 192.168.12.110 para el cliente, la estrofa se verá como a continuación.

[...] host mywindows-client ( hardware ethernet 00:0C:29:05:A7:CB; dirección fija 192.168.12.110; ) [...]

Ahora, inicie el servicio dhcpd y haga que se inicie automáticamente al reiniciar el sistema.

# reinicio del servidor sudo isc-dhcp

Configurar clientes DHCP

Ahora, necesita configurar las máquinas cliente para obtener la dirección IP automáticamente del servidor DHCP. Puede lea los artículos siguientes.

Configuración de red en CentOS 7

Como se describe en el artículo correspondiente, es necesario realizar una serie de configuraciones básicas. Uno de los cuales es configurar conexiones de red. Consideremos esta operación en orden.

Para usuarios novatos linux Pueden surgir dificultades en la primera etapa: no será posible verificar el estado actual de la red con el comando ifconfig(Aparecerá un mensaje: comando no encontrado). Esto no es un problema, es una característica de cómo funciona CentOS, así que este comando debe ejecutarse como superusuario (administrador) con el comando:

La razón es que los usuarios normales del sistema y el usuario root tienen diferentes Variables de entorno RUTA (puede ver la RUTA del usuario usando echo $PATH). Después de ingresar un comando de Linux, el shell buscará la RUTA del usuario para intentar encontrar un comando para ejecutar. Comienza a buscar en todos los directorios enumerados en PATH hasta que se encuentra el objetivo. Los comandos de usuario habituales normalmente se encuentran en /usr/local/bin, /usr/bin y /bin. Y los comandos del usuario root se encuentran principalmente en /usr/local/sbin, /usr/sbin, /sbin y la RUTA raíz refleja esto. Entonces, cuando te conviertes en superusuario con "su -", también adoptas una nueva RUTA para tus comandos principales. Y usando solo 'su', la RUTA de usuario predeterminada se conserva, por lo tanto, al intentar ejecutar un programa ubicado en /usr/local/sbin, /usr/sbin, /sbin producirá el resultado: 'comando extraviado' error. Para obtener una explicación más detallada, consulte la página de man bash, especialmente la sección de shells de inicio de sesión. Por lo tanto, debe especificar la ruta completa al comando (ejemplo - /sbin/ifconfig) cuando use 'su', o use 'su -' cuando se convierta en root.

Para verificar la configuración de red actual, use el comando:

Cuando trabaje en la familia de sistemas operativos Linux, debe saber y comprender que todos los dispositivos de hardware y software, así como varios parámetros del Sistema operativo y los programas se almacenan en archivos de configuración. Por lo tanto, los archivos de configuración de la interfaz controlan interfaces de software dispositivos de red individuales. Cuando se inicia el sistema operativo, se leen estos archivos y la información que contienen, sobre la base de lo cual se determinan las interfaces necesarias (utilizadas y configuradas), así como su inicio.

Estos archivos suelen denominarse ifcfg-<имя> , Dónde<имя>se refiere al nombre del dispositivo controlado por este archivo de configuración. Como se mencionó anteriormente, todas las interfaces y los parámetros del sistema operativo se almacenan en varios archivos especializados, lo que le brinda al administrador una capacidad conveniente y flexible para configurar los parámetros del sistema operativo y del hardware.

Configurar la interfaz de red

Configuremos la interfaz de red editando el archivo de configuración, que se encuentra en el directorio /etc/sysconfig/network-scripts/

En mi caso, el cable está conectado al primer (y único) adaptador de red, que se llama en el sistema. eth0. Editemos el archivo correspondiente:

# vi /etc/sysconfig/network-scripts/ ifcfg-eth0

Te recuerdo que hagas cambios en el contenido del archivo en el editor. vi- necesario:

  • presione la tecla “i” o “Insertar”
  • para salir del modo de edición - “esc”
  • para guardar los cambios - “Shift+:” luego “wq” y presione “Enter”

Para una red con una dirección IP estática:

DISPOSITIVO = ”eth0″
BOOTPROTO="ninguno"
ONBOOT="sí"
IPADDR="192.168.1.100″
MÁSCARA DE RED = ”255.255.255.0 ″
PUERTA DE ENTRADA=”192.168.1.1″

Para una red que utiliza DHCP:

DISPOSITIVO = ”eth0″
BOOTPROTO="dhcp"
ONBOOT="sí"

Comentarios sobre las acciones realizadas:

Configuración de la red

Editamos el archivo de configuración de red:

#vi /etc/sysconfig/network

Introduzca los siguientes datos:

REDES = "sí"
HOSTNAME=”Nombre.de.su.servidor” o estación de trabajo

Para aplicar la configuración correctamente (para que surta efecto), reinicie la red:

# /etc/init.d/reinicio de red

Si no se requieren cambios en el archivo /etc/sysconfig/network, entonces solo se puede reiniciar la interfaz:

# si abajo eth0 && si arriba eth0

También vale la pena saber que La configuración de la red se puede realizar más rápido, ejecuta estos comandos:

ifconfig eth0 192.168.Х.Х máscara de red 255.255.255.0

Para desactivar la interfaz de red:

Si desea que la configuración se reciba automáticamente a través de DHCP, ejecute el siguiente comando:

En este caso, para detener la interfaz de red, deberá cerrar el programa dhclient:

¡PERO!Al configurar una red de esta manera, después de reiniciar, será necesario volver a realizar la configuración.

Configuración de DNS

Abra el archivo 'resolv.conf':

En este material tocaré un tema actual con el que comienza casi cualquier trabajo inicial con el servidor. Configuración de parámetros básicos de red en CentOS 7 y 8: dirección IP, dhcp, ipv6, dns, nombre de host, rutas estáticas, tarjetas de red y otros parámetros de red. Avanzaremos en el tema paso a paso de lo simple a lo complejo, analizando todos los matices en orden y respondiendo las preguntas más populares.

  1. Explique cómo realizar configuraciones básicas de red en un servidor Centos versiones 7 y 8.
  2. Muestra opciones de configuración de red adicionales.
  3. Utilice algunos ejemplos para explicar cómo resolver problemas típicos con la red.
  4. Muestra algunas utilidades de red útiles.

Este artículo es parte de una única serie de artículos sobre el servidor.

Configuración de red en un servidor CentOS

La primera vez que nos encontramos con la configuración de red de un servidor CentOS 7 u 8 es cuando realizamos la instalación. En la pantalla configuración inicial Hay un punto aparte con respecto a la configuración de interfaces de red:

Al ingresarlo, vemos una lista de tarjetas de red conectadas. Cada uno de ellos se puede activar mediante el control deslizante correspondiente (punto 1 en la imagen). Cuando la interfaz está activada, recibe automáticamente la configuración a través de dhcp. Puedes ver el resultado del trabajo de dhcp allí mismo. Si no está satisfecho con esta configuración, puede editarla haciendo clic en configurar(punto 3 de la imagen). Aquí también puedes configurar nombre de host(punto 2 en la imagen):


Al abrir la ventana de configuración adicional de Ehernet, puede cambiar el nombre de la interfaz de red, especificar la configuración de IP (elemento 1 en la imagen), seleccionar ajustes manuales (punto 2 en la imagen), asignar dirección IP(punto 3 en la imagen), instalar servidor DNS(punto 4 en la imagen) y guarde la configuración de red (punto 5 en la imagen):


Después de completar las configuraciones restantes, comenzará la instalación. Después de la instalación, tendrá un servidor con la configuración de red que especificó.

Ahora consideremos otra situación. Usted no creó el servidor y, por lo tanto, la configuración de red, pero ahora necesita revisarlo o cambiarlo. La consola del servidor está a vuestra disposición y trabajaremos en ella. Si lo instaló desde un kit de distribución mínimo, luego, cuando intenta ver la configuración de red usando el comando ifconfig en la consola verás lo siguiente:

Bash: ifconfig: comando no encontrado

o en versión rusa:

Bash: comando ifconfig no encontrado

Para trabajar con ifconfig y otras utilidades de red, necesita instalar el paquete herramientas de red. Vamos a hacerlo:

# yum instala net-tools

Ahora puedes ver la configuración de red:

mtu 1500 inet 192.168.159.129 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquetes RX 319 bytes 36709 (35,8 KiB) Errores RX 0 eliminados 0 desbordamientos 0 trama 0 Paquetes TX 256 bytes 148817 (145,3 KiB) Errores de TX 0 eliminados 0 desbordamientos 0 transportista 0 colisiones 0 lo: banderas=73 mtu 65536 inet 127.0.0.1 máscara de red 255.0.0.0 inet6::1 prefixlen 128 alcanceid 0x10 loop txqueuelen 0 (Local Loopback) Paquetes RX 6 bytes 624 (624.0 B) Errores RX 0 descartados 0 desbordamientos 0 trama 0 Paquetes TX 6 bytes 624 (624.0 B) Errores TX 0 descartados 0 desbordamientos 0 portadora 0 colisiones 0

Si no desea instalar un paquete adicional, puede usar un comando más simple IP con parámetros:

# dirección IP 1: lo: mtu 65536 qdisc noqueue estado DESCONOCIDO enlace/bucle invertido 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 alcance host lo valid_lft para siempre preferido_lft para siempre inet6::1/ 128 alcance host valid_lft para siempre preferido_lft para siempre 2: eno16777728: mtu 1500 qdisc pfifo_fast estado UP qlen 1000 enlace/éter 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff inet 192.168.159.129 /24 brd 192.168.159.255 alcance global dinámico eno16777728 valid_lft 1709secferred_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 enlace de alcance valid_lft para siempre preferido_lft para siempre

Hemos visto la configuración de red, ahora editémosla. Digamos que necesitamos cambiar la dirección IP. Para hacer esto, vaya al directorio y abra el archivo para editarlo ifcfg-eth0 o ifcfg-ens18. El nombre del archivo dependerá del nombre de la interfaz de red. De forma predeterminada, Centos 8 eliminó la compatibilidad con la configuración de una red mediante scripts de configuración, así que instale el paquete network-scripts por separado.

# yum instala scripts de red

El archivo ifcfg-eth0 tiene aproximadamente el siguiente contenido:

Usando la configuración de este archivo, obtenemos la dirección IP a través de dhcp. Para registrar manualmente una IP estática, llevamos el archivo al siguiente contenido:

Hemos cambiado los parámetros:

Para que los cambios surtan efecto, debe volver a leer la configuración de red:

Compruebe si se ha aplicado la nueva configuración de red:

# ifconfig eth0: banderas=4163 mtu 1500 inet 192.168.159.129 máscara de red 255.255.255.0 transmisión 192.168.159.255 inet6 fe80::20c:29ff:fe7d:593f prefixlen 64 alcanceid 0x20 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquetes RX 672 bytes 71841 (70,1 KiB) Errores RX 0 eliminados 0 desbordamientos 0 trama 0 Paquetes TX 572 bytes 290861 (284,0 KiB) Errores de TX 0 eliminados 0 desbordamientos 0 transportista 0 colisiones 0

Todo está bien, la nueva configuración de la interfaz de red está instalada.

Cómo obtener la configuración de red a través de DHCP

Ahora consideremos la situación opuesta. digamos que tienes tarjeta LAN tiene algunas configuraciones configuradas manualmente. Pero desea que su computadora reciba la configuración de red a través de dhcp como cliente. Para hacer esto, es necesario realizar la operación contraria a la que hicimos antes. Es decir, abrimos el archivo. /etc/sysconfig/network-scripts/ifcfg-ens18 y borramos allí las líneas con los parámetros DNS, IPADDR, PREFIX, GATEWAY y en el parámetro BOOTPROTO especificamos el valor "dhcp".

Guarde el archivo y reinicie la red:

# systemctl reinicia la red

Luego comprobamos si nuestro cliente ha recibido la configuración a través de dhcp.

Cómo configurar DNS en CentOS

La configuración actual del servidor DNS en CentOS se puede ver en dos lugares:

  1. En el archivo con la configuración de la tarjeta de red ifcfg-eth0, que previamente hemos editado varias veces.
  2. En el archivo /etc/resolv.conf

Por qué ahora están en dos lugares, no lo sé, pero antes, la configuración del servidor DNS en algunas distribuciones, no recuerdo exactamente cuáles, se indicaban solo en resolv.conf, pero en algún momento esto cambió. Y todas las configuraciones de red comenzaron a almacenarse en un archivo junto con la dirección, la puerta de enlace, la máscara, etc. Si ahora edita el archivo resolv.conf y agrega algunos DNS del servidor allí, luego de reiniciar serán reemplazados con los valores del archivo ifcfg-eth0.

Entonces, para configurar los parámetros del servidor DNS, debe editar el archivo de configuración de red ifcfg-eth0 y agregar tantos servidores como sea necesario. Por ejemplo así:

DNS1="192.168.159.2" DNS2="8.8.8.8" DNS3="8.8.4.4"

Para aplicar la configuración, guarde el archivo y reinicie la red, todo es como de costumbre. Después de reiniciar el servidor, la configuración de DNS se escribirá en el archivo resolv.conf

# cat /etc/resolv.conf # Generado por NetworkManager servidor de nombres 192.168.159.2 servidor de nombres 8.8.8.8 servidor de nombres 8.8.4.4

Cómo deshabilitar ipv6

Actualmente en uso activo del protocolo. ipv6 En Rusia no lo es y en el trabajo normal la mayoría de las veces no es necesario. Aunque llevamos muchos años temiendo que prácticamente no queden direcciones IP gratuitas, en realidad todavía hay suficientes para todos. Entonces, por razones prácticas, actualmente no se necesita ipv6 en el servidor y se puede desactivar.

Antes de desactivar ipv6 en centos, por si acaso, es necesario comprobar qué programas lo utilizan en su trabajo. Esto es necesario para evitar errores en su funcionamiento deshabilitando primero ipv6 en las configuraciones. Para ver qué programas están colgados en la interfaz ipv6, use el comando netstat:

# netstat -tulnp Conexiones activas a Internet (solo servidores) Proto Recv-Q Send-Q Dirección local Dirección extranjera Estado PID/Nombre del programa tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ESCUCHAR 1333/sshd tcp6 0 0::1:25:::* ESCUCHAR 2317/master tcp6 0 0:::22:::* ESCUCHAR 1333/sshd udp 0 0 0.0.0.0:49252 0.0.0.0:* 694/avahi-daemon: rudp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 694/avahi-daemon: rudp 0 0 127.0.0.1:323 0.0.0.0:* 715/chronyd udp6 0 0:::123:::* 715/chronyd udp6 0 0::1:323:::* 715/chronyd

Todas las líneas con ::: son protocolo ipv6. En mi caso es sshd, postfix y chronyd. Desactivemos ipv6 para ellos y dejemos solo ipv4.

Empecemos con sshd. Abra el archivo de configuración /etc/ssh/sshd_config y encuentra las líneas:

#AddressFamily cualquier #ListenAddress 0.0.0.0

Descomentémoslos y cambiémoslos. Debe tener un aspecto como este:

AddressFamily inet ListenAddress 0.0.0.0

Ahora abra el archivo de configuración de postfix /etc/postfix/main.cf. Buscamos la línea allí:

#inet_protocols = todos

Cambiar a:

Protocolos_inet = ipv4

Deshabilite ipv6 en chronyd. Para hacer esto, cree un archivo /etc/sysconfig/ cronía y agrega la línea:

OPCIONES=-4

Ahora desactivamos ipv6 en CentOS. Abre el archivo /etc/ sysctl.conf y agregue las líneas allí:

Net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

Editando el archivo /etc/sysconfig/ red , agregando allí:

NETWORKING_IPV6=no IPV6INIT=no

Agregue una prohibición de ipv6 a la configuración de grub. Abra la configuración /etc/default/grub y agregue otro valor al parámetro GRUB_CMDLINE_LINUX ipv6.disable=1. Debería verse así:

GRUB_CMDLINE_LINUX="rd.lvm.lv=cl_centos8/root rhgb silencioso ipv6.disable=1"

Después de esto, actualizamos la configuración del gestor de arranque.

# grub2-mkconfig -o /boot/grub2/grub.cfg

Reinicie y verifique el resultado:

# reiniciar # ifconfig eno16777728: banderas = 4163 mtu 1500 inet 192.168.159.129 máscara de red 255.255.255.0 transmisión 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) paquetes RX 2301 bytes 243024 (237,3 KiB) errores RX 0 eliminado 0 saturaciones 0 trama 0 TX paquetes 2138 bytes 1327955 (1,2 MiB) Errores de TX 0 caídas 0 desbordamientos 0 portadora 0 colisiones 0 lo: banderas = 73 mtu 65536 inet 127.0.0.1 máscara de red 255.0.0.0 bucle txqueuelen 0 (bucle invertido local) Paquetes de RX 0 bytes 0 (0,0 B) Errores de RX 0 eliminados 0 desbordamientos 0 trama 0 Paquetes de TX 0 bytes 0 (0,0 B) Errores de TX 0 eliminados 0 desbordamientos 0 transportista 0 colisiones 0

No se mencionan direcciones de formato inet6 e ipv6 en ninguna parte. Entonces todo está bien, hemos desactivado ipv6 en CentOS. Ahora revisemos la lista de puertos abiertos:

# netstat -tulnp Conexiones activas a Internet (solo servidores) Proto Recv-Q Send-Q Dirección local Dirección extranjera Estado PID/Nombre del programa tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ESCUCHAR 1322/sshd udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 697/avahi-daemon: r udp 0 0 127.0.0.1:323 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon: r

Todos los puertos son ipv4. Todo está en orden, nuestra tarea está completada.

Cómo cambiar el nombre de host en CentOS

Por defecto, durante Instalaciones de CentOS pone el nombre del host localhost.dominiolocal. Si no lo has cambiado, puedes hacerlo más tarde. Primero, verifiquemos qué nombre de host ha configurado. Esto se hace usando el comando en la consola. nombre de host, o usando tu nombre:

# nombre de host localhost.dominiolocal # uname -n localhost.dominiolocal

Para cambiar el nombre de host en CentOS, debe editar el archivo /etc/nombre de host. Revisemos su contenido:

# cat /etc/nombrehost localhost.dominiolocal

Editemos este archivo para cambiar el nombre de host:

# mcedit /etc/hostname centos.localhost

Guarde el archivo y verifique:

# nombre de host centos.localhost

Hay un comando listo para usar que establece inmediatamente el nombre del servidor requerido:

# hostnamectl set-hostname centos.localhost

Todo está bien, cambiamos el nombre de host a centos.localhost

Establecer la puerta de enlace predeterminada en CentOS

Si por alguna razón durante la configuración parámetros de red Si no tiene instalada una puerta de enlace predeterminada, puede hacerlo manualmente. Primero, verifiquemos qué puerta de enlace predeterminada está instalada en el sistema en este momento:

# netstat -nr Tabla de enrutamiento IP del kernel Puerta de enlace de destino Banderas Genmask Ventana MSS irtt Iface 0.0.0.0 149.154.71.254 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 149.154.70.0 0.0.0.0 255.255.254.0 U 0 0 0 eth0 192.168.1.0 10.8.0.2 255.255. 255.0 UG 0 0 0 tun0

La línea con Destino 0.0.0.0 especifica la dirección de la puerta de enlace. Si no lo tiene, o está configurada la puerta de enlace incorrecta en el campo Puerta de enlace, puede cambiar esto. Configure la puerta de enlace predeterminada:

# ruta agregar gw predeterminado 192.168.0.1

O lo mismo con el comando ip.

# ip r predeterminado a través de 10.20.1.1 dev ens18 proto dhcp métrica 100 10.20.1.0/24 dev ens18 proto kernel alcance enlace src 10.20.1.23 métrica 100 # ruta ip agregar valor predeterminado 10.20.1.0/24 dev ens18

# ruta ip agregar valor predeterminado a través de 10.20.1.1

Administrador de red en CentOS

CentOS tiene por defecto un servicio que gestiona todas las conexiones de red: Gerente de Redes. Supervisa constantemente la configuración de la red y, utilizando el demonio de gestión de configuración, realiza los cambios apropiados para activar dispositivos de red. Admite archivos de configuración ifcfg estándar.

Lista de utilidades y aplicaciones de red:

Los usuarios no interactúan directamente con NetworkManager en CentOS; utilizan utilidades gráficas y de línea de comandos para hacerlo. Una de esas utilidades es configuración del sistema red tui. En Centos 8, de forma predeterminada, NetworkManager es el método recomendado para configurar una red. Todos los demás métodos se declaran obsoletos.

Configuración del sistema red tui

Para administrar la configuración de red en CentOS, puede utilizar una utilidad gráfica nmtui. Es muy fácil comprobar su presencia en el sistema. Simplemente ejecútelo en la consola:

Si no lo tienes instalado, es muy fácil de arreglar. Instalar en la red de configuración del sistema CentOS tui:

# yum instalar NetworkManager-tui

Mediante el uso tui puede especificar cualquier configuración de red que hicimos antes a través de línea de comando y editar archivos de configuración de scripts de red. Vamos a hacer eso. Llame al programa:

Seleccione el primer elemento Editar una conexión, luego seleccione la interfaz de red y haga clic en “Editar”:

Aquí podemos cambiar el nombre de la tarjeta de red, dirección MAC, especifique el tipo de configuración de red: manual o dhcp, especifique manualmente la dirección IP, la dirección de puerta de enlace, el servidor DNS, agregue rutas y algunas otras configuraciones:

Una vez completada la edición, guarde la configuración haciendo clic en Aceptar.
Si selecciona el elemento en la primera pantalla de la utilidad Establecer el nombre de host del sistema, puede especificar rápidamente el nombre de host. El resultado será el mismo que hicimos antes en la consola.

Si se está preparando para obtener la certificación RHEL, verá en todas partes una recomendación para usar nmtui para configurar la red. La conclusión es que el tiempo durante el examen es limitado y, con la ayuda de un administrador de red, puede y debe guardarlo. Se cree que configurar una red de esta forma es más rápido.

Cómo agregar una ruta estática en CentOS

Para controlar el enrutamiento en CentOS, es posible que necesite agregar una ruta estática. Esto se puede hacer de manera bastante simple usando comando de consola. Primero, verifiquemos las rutas existentes usando netstat:

# netstat -nr Tabla de enrutamiento IP del kernel Puerta de enlace de destino Banderas Genmask Ventana MSS irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno1677 7728

En este caso, tenemos una ruta para la dirección 0.0.0.0/0.0.0.0; la puerta de enlace es 192.168.159.2, que también es la puerta de enlace predeterminada. Es decir, en esencia, no existen rutas estáticas. Agreguemos uno de ellos.

Digamos que tenemos una subred 192.168.8.0, máscara 255.255.255.0, el tráfico a esta subred es enrutado por la puerta de enlace 192.168.159.5. Agregue una ruta:

# ruta agregar -net 192.168.8.0/24 gw 192.168.159.5

Compruebe si la ruta agregada ha aparecido en tabla de ruteo:

# netstat -nr Tabla de enrutamiento IP del kernel Puerta de enlace de destino Banderas Genmask Ventana MSS irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.159.5 255.255.255.0 UG 0 0 0 es o16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777728

Todo está bien, se ha añadido la ruta. Hacemos lo mismo usando la utilidad ip.

# ip r # ruta ip agregar 192.168.8.0/24 a través de 192.168.159.5

Pero después de reiniciar, esta ruta estática se eliminará. Para evitar que esto suceda y guardar las rutas agregadas, debe escribirlas en un archivo especial. en carpeta /etc/sysconfig/network-scripts crear un archivo llamado ruta-eth0 el siguiente contenido:

# medit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 vía 192.168.159.5

Reinicie y verifique si la ruta está en su lugar:

# reiniciar # netstat -nr Tabla de enrutamiento IP del kernel Puerta de enlace de destino Banderas Genmask Ventana MSS irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.8.0 192.168.159.5 255.255.2 55.0 UG 0 0 0 eno16777728 192.168.159.0 0.0 .0.0 255.255.255.0 U 0 0 0 eno16777728

Todo está bien, se ha agregado la ruta estática.

Cómo configurar 2 direcciones IP en una interfaz

Si necesita configurar 2 IP direcciones en una interfaz en CentOS, entonces hacer esto es bastante simple. Usemos el comando ifconfig. Primero, revisemos la lista de interfaces de red:

# ifconfig eno16777728: banderas=4163 mtu 1500 inet 192.168.159.129 máscara de red 255.255.255.0 transmisión 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquetes RX 254 bytes 30173 (29,4 KiB) Errores RX 0 eliminados 0 saturaciones 0 trama 0 TX paquetes 204 bytes 27658 (27,0 KiB) Errores de TX 0 caídas 0 desbordamientos 0 portadora 0 colisiones 0 lo: banderas = 73

Agreguemos otra dirección IP 192.168.159.120 a la interfaz eno16777728:

# ifconfig eno16777728:1 192.168.159.120 arriba

Veamos qué pasó:

# ifconfig eno16777728: banderas=4163 mtu 1500 inet 192.168.159.129 máscara de red 255.255.255.0 transmisión 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) Paquetes RX 254 bytes 30173 (29,4 KiB) Errores RX 0 eliminados 0 saturaciones 0 trama 0 TX paquetes 204 bytes 27658 (27,0 KiB) Errores de TX 0 caídas 0 desbordamientos 0 portadora 0 colisiones 0 eno16777728:1: banderas=4163 mtu 1500 inet 192.168.159.120 máscara de red 255.255.255.0 transmisión 192.168.159.255 ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) lo: flags=73 mtu 65536 inet 127.0.0.1 máscara de red 255.0.0.0 bucle txqueuelen 0 (bucle invertido local) Paquetes de RX 11 bytes 940 (940.0 B) Errores de RX 0 eliminados 0 desbordamientos 0 trama 0 Paquetes de TX 11 bytes 940 (940.0 B) Errores de TX 0 eliminados 0 desbordamientos 0 transportista 0 colisiones 0

Lo mismo usando ip.

# ip a agregar 192.168.159.120/24 dev eno16777728:1

Todo está bien, agregamos una segunda dirección IP a la misma interfaz. Pero después de reiniciar, la dirección adicional no se guardará. Para guardarlo, debe crear un archivo de configuración de interfaz en la carpeta /etc/sysconfig/network-scripts

#mcedit /etc/sysconfig/network-scripts/ ifcfg-eno16777728:1 DISPOSITIVO=eno16777728:1 BOOTPROTO=estático IPADDR=192.168.159.120 NETMASK=255.255.255.0 ONBOOT=sí

Guarde el archivo, reinicie y compruebe qué sucedió. La segunda dirección IP debe estar en su lugar.

Cómo hacer un reinicio de red en CentOS

Ya mencioné este tema anteriormente, pero por si acaso lo repetiremos por separado. Digamos que ha realizado algunos cambios en la configuración de su red. ¿Cómo puedo aplicar esta configuración sin reiniciar el servidor? Muy simple. Para reiniciar la red en CentOS, simplemente use el comando systemd:

# systemctl reinicia la red

Si ve un error:

No se pudo reiniciar el servicio de red: no se encontró el servicio de red de la unidad.

Esto significa que no tiene instalado el paquete network-scripts y que la red se administra mediante NetworkManager, que a su vez reinicia la red después de cambiar la configuración.

Si usted tiene versión antigua Centos sin systemd, y esta es la versión 6 y anterior, entonces la red se reinicia así.

# /etc/init.d/reinicio de red

El servicio de red volverá a leer todas las configuraciones de red y aplicará los cambios.

Cómo averiguar la dirección IP en CentOS

Para encontrar rápidamente la dirección IP actual en CentOS, debe usar los siguientes comandos:

#ifconfig | grep inet inet 192.168.159.129 máscara de red 255.255.255.0 transmisión 192.168.159.255 inet 127.0.0.1 máscara de red 255.0.0.0

O la segunda opción para determinar la dirección IP local:

# dirección IP | grep inet inet 127.0.0.1/8 alcance host lo inet 192.168.159.129 /24 brd 192.168.159.255 alcance global eno16777728

Ambos comandos le permiten encontrar rápidamente su dirección IP.

¿Qué hacer si CentOS no ve la tarjeta de red?

Instaló el servidor, arrancó y descubrió que no hay ni una sola tarjeta de red en el sistema. ¿Qué hacer en este caso? En primer lugar, mire la salida del comando dmesg y busque allí una memoria de su tarjeta. Quizás esté en el sistema, pero no activado. Puedes activarlo usando nmtui, que dije arriba.

Hay un elemento de menú Activar conexión, debes ingresar y activar tu tarjeta de red. Después de esto podrás configurarlo.

Si su tarjeta de red no está en el sistema, deberá buscar en Internet información sobre esta tarjeta de red por modelo. Quizás haya controladores para ello en los repositorios. Esta es una situación bastante común. La mayoría de las veces, se encontrarán controladores y será necesario instalarlos correctamente.

Todavía existe la posibilidad de que no vea su tarjeta cuando ejecute el comando ifconfig si no hay un cable de red conectado a esta tarjeta. Para asegurarse de ver todas las interfaces, debe usar el modificador -a:

#ifconfig-a

Hay otra forma de buscar una tarjeta de red en el sistema. Instalar el paquete pciutils:

# yum -y instalar pciutils

Y mira el resultado del comando:

#lspci | grep ethernet

Si el sistema ve la tarjeta de red, debería haber algo como esto:

02:00.0 Controlador Ethernet: Controlador Intel Corporation 82545EM Gigabit Ethernet (cobre) (rev 01)

Si la salida está vacía, entonces la tarjeta de red no está definida.

¿Qué hacer si la red no está disponible en CentOS?

Supongamos que está intentando hacer ping a alguna dirección, por ejemplo 8.8.8.8, y recibe una respuesta de que la red no está disponible:

#ping 8.8.8.8

Y como respuesta obtienes:

Conectar: ​​la red no está disponible

Esta situación puede surgir si no tiene instalada una puerta de enlace predeterminada. Puedes agregarlo usando el comando:

# ruta agregar gw predeterminado 192.168.0.1

Si el problema no está en la puerta de enlace, entonces debe verificar la configuración de los adaptadores de red. Si no hay ningún adaptador activo, también recibirá un mensaje de que la red no funciona. Es necesario que al menos un adaptador de red esté configurado correctamente en el sistema. Cómo hacer esto está escrito arriba.

Usando las utilidades de red traceroute, profundice en CentOS

Para diagnosticar conexiones de red en CentOS es útil utilizar utilidades especiales. Pero si utilizó la instalación mínima, lo más probable es que no estén en el sistema. Por ejemplo, la popular utilidad trazarruta Cuando intente iniciarlo, mostrará el siguiente mensaje:

# traceroute ya.ru bash: traceroute: comando no encontrado

Debe instalarse por separado del repositorio:

# yum instala traceroute

Lo mismo con el popular programa. excavar para trabajar con servidores y registros DNS:

# dig ya.ru bash: dig: comando no encontrado

Para que esta utilidad de red funcione, debe instalar el paquete utilidades de enlace:

# yum instala bind-utils

Configuración de VLAN 802.1Q en CentOS

Para generar una interfaz etiquetada en CentOS, primero debe verificar el soporte del kernel 8021q:

#modprobe8021q

Si no hay mensajes de error, entonces todo está en orden, el módulo se ha cargado. Si no se encuentra el módulo, deberá reconstruir los módulos del kernel, habilitando la compatibilidad con el módulo requerido. Comprobemos, por si acaso, si el módulo se ha cargado:

#lsmod | grep 8021q 8021q 29022 0 garp 14384 1 8021q mrp 18542 1 8021q

Todo está bien, el módulo 8021q está cargado, agreguémoslo al inicio:

# eco 8021q >> /etc/modules-load.d/8021q.conf

Ahora creamos un archivo de configuración para vlan en /etc/sysconfig/network-scripts:

#mcedit ifcfg-eth0.2000 VLAN=sí DISPOSITIVO=eth0.2000 BOOTPROTO=ONBOOT estático=sí TIPO=VLAN IPADDR=192.168.100.2 MÁSCARA DE RED=255.255.255.0

Llamo su atención sobre lo que está resaltado en negrita. En todas las instrucciones en Internet que encontré, este parámetro se indicaba como TIPO=Ethernet, pero con esta configuración la interfaz con vlan no subió, apareció un error:

Error: no se encontró ningún dispositivo para la conexión "Sistema eth0.2000".

Sólo después de que lo arreglé todo funcionó como debería. Así que guarda y activa la interfaz:

# ifup eth0.2000 Conexión activada exitosamente (ruta activa D-Bus: /org/freedesktop/NetworkManager/ActiveConnection/7)

Comprobando nuestra VLAN:

# ip l ls 1: lo: mtu 65536 qdisc noqueue estado modo DESCONOCIDO Enlace/bucle predeterminado 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast estado modo ARRIBA PREDETERMINADO qlen 1000 enlace/éter 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff 3: eth0.2000@eth0: mtu 1500 qdisc noqueue estado modo ARRIBA enlace/éter PREDETERMINADO 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

Todo está bien, la interfaz etiquetada está activa. Por analogía, puede crear varias interfaces más similares, sin olvidar cambiar sus nombres y direcciones.

Conclusión

Con esto concluye mi voluminoso material sobre el tema de la configuración de red en CentOS. Estaré muy contento de recibir comentarios, observaciones y correcciones. Probablemente lo harán. Al crear estos materiales, en primer lugar aprendo por mí mismo y mejoro mis conocimientos en el área temática. Puede haber errores y errores tipográficos aquí en alguna parte, aunque reviso todo en sistemas en vivo cuando escribo manuales, pero aún es posible que haya imprecisiones y errores tipográficos.

Permítanme recordarles que este artículo es parte de una única serie de artículos sobre el servidor.

Curso en línea sobre Linux

Si desea aprender a construir y mantener sistemas confiables y de alta disponibilidad, le recomiendo que se familiarice con curso online “Administrador Linux” en OTÚS. El curso no es para principiantes, para la admisión se necesitan conocimientos básicos de redes y instalación de linux a la máquina virtual. La formación tiene una duración de cinco meses, después de los cuales los alumnos que hayan superado el curso podrán realizar entrevistas con los socios. Qué te aportará este curso:
  • Conocimiento de la arquitectura Linux.
  • Desarrollo métodos modernos y herramientas de análisis y procesamiento de datos.
  • Capacidad para seleccionar una configuración para las tareas requeridas, gestionar procesos y garantizar la seguridad del sistema.
  • Dominio de las herramientas básicas de trabajo de un administrador de sistemas.
  • Comprensión de los detalles de la implementación, configuración y mantenimiento de redes construidas en Linux.
  • La capacidad de resolver rápidamente problemas emergentes y garantizar un funcionamiento estable e ininterrumpido del sistema.
Ponte a prueba en la prueba de acceso y consulta el programa para más detalles.

) es un protocolo de red utilizado para asignar direcciones IP a clientes de red dinámicamente desde un grupo de IP predefinido. Es útil para redes LAN, pero generalmente no se usa para servidores de producción. Este artículo le ayudará a configurar el servidor DHCP en CentOS, Red Hat System. Lea más sobre dhcp.

Instalar el paquete DHCP

Primero instale los paquetes DHCP usando el administrador de paquetes yum en sistemas CentOS, Red Hat. Los rpm de DHCP están disponibles en los repositorios base, por lo que no necesitamos agregar un repositorio adicional.

Yum instalar dhcp

Actualizar el archivo /etc/sysconfig/dhcpd

En primer lugar, debemos configurar el nombre de la interfaz Ethernet como DHCPDARGS en /etc/sysconfig/dhcpd archivo. Edite este archivo de configuración y actualice el nombre de Ethernet.

DHCPDARGS=eth1

Configurar el servidor DHCP

DHCP crea un archivo de configuración vacío /etc/dhcp/dhcpd.conf. También proporciona un archivo de configuración de muestra en /usr/share/doc/dhcp*/dhcpd.conf.sample, que es muy útil para configurar el servidor DHCP.

Entonces, como primera parte, copie el contenido del archivo de configuración de muestra al archivo de configuración principal. El archivo de configuración de muestra puede modificarse según la perversión que haya instalado en su sistema.

# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

3.1 – Configuración de parámetros

Primero configure las opciones básicas que son comunes a todas las redes compatibles.

Sitio web, ns2.site; tiempo de arrendamiento predeterminado 600; tiempo máximo de arrendamiento 7200; autoritario; instalación de registro local7;

3.2 – Declaración de subred IP

Primero, edite el archivo de configuración DHCP y actualice los detalles de la subred según su red. Para este ejemplo, estamos configurando DHCP para 192.168.1.0/24 Red LAN.

Subred 192.168.1.0 máscara de red 255.255.255.0 (opción de enrutadores 192.168.1.254; opción de máscara de subred 255.255.255..168.1.1; opción de compensación de tiempo -18000; # rango de hora estándar del este 192.168.1.10 192.168.1.100 ; )

3.3 -Asignar dirección IP estática al host

En algunos casos, necesitamos asignar una IP fija a una interfaz cada vez que solicita desde dhcp. También podemos asignar una IP fija en función de la dirección MAC (hardware ethernet) de esa interfaz. La configuración del nombre de host es opcional.

Estación host1 (opción nombre de host "station1.example.com"; hardware ethernet 00:11:1A:2B:3C:AB; dirección fija 192.168.1.100;)

Iniciar servicio DHCP

Después de realizar todos los cambios anteriores, iniciemos el servicio dhcp usando los siguientes comandos según la versión de su sistema operativo.

Para CentOS/RHEL 7 systemctl start dhcp Para CentOS/RHEL 6/5 service dhcp start

De manera similar, para detener y reiniciar el servicio dhcp, utilice los siguientes comandos.

Para CentOS/RHEL 7 systemctl stop dhcp ystemctl restart dhcp Para CentOS/RHEL 6/5 service dhcp stop service dhcp restart

Paso 5: configurar el sistema cliente

En esta etapa tenemos un servidor dhcp en ejecución que está listo para aceptar solicitudes y asignarles una IP adecuada. pero para verificar tengo otra máquina CentOS ejecutándose en la misma LAN. Ahora inicie sesión en esa máquina cliente y edite el archivo de configuración de Ethernet.

Vim /etc/sysconfig/network-scripts/ifcfg-eth1 DISPOSITIVO=eth1 BOOTPROTO=dhcp TYPE=Ethernet ONBOOT=yes

Cerciorarse PROTO DE ARRANQUE se establece en DHCP.

Reiniciemos los servicios de red en la máquina cliente. Obtendrá que al servidor dhcp se le asigne una dirección IP de la subred definida. Si se ha conectado a la PC del cliente desde un inicio de sesión remoto, su sesión se puede desconectar.

Para CentOS/RHEL 7 systemctl reiniciar la red Para CentOS/RHEL 6/5 reiniciar la red de servicio

En esta nota quiero ver una simple y opción rápida configuración de la puerta de enlace para organizar el acceso a Internet desde red local basado en CentOS 7. No habrá funcionalidad adicional, solo lo esencial para que las computadoras detrás de la puerta de enlace accedan a Internet.

Este artículo es parte de una única serie de artículos sobre el servidor.

Introducción

Tendremos a nuestra disposición el siguiente servidor para configurar la puerta de enlace:

# cat /etc/redhat-release CentOS Linux versión 7.1.1503 (Núcleo)

Configuración preliminar del servidor

# yum -y actualización

Después de eso instalo mc, ya que estoy acostumbrado y lo uso todo el tiempo:

#mcedit /etc/sysconfig/selinux

Reducimos la línea con el parámetro correspondiente a la siguiente forma:

SELINUX=deshabilitado

Para aplicar los cambios, reinicie el servidor:

# reiniciar # yum -y instalar epel-release

Instale iftop en CentOS 7:

# yum -y instalar iftop

Ahora podemos observar la carga de la red en la puerta de enlace en tiempo real. Para ver la actividad de la red, simplemente ejecute iftop:

De forma predeterminada, escucha la interfaz eth0. Esta es la interfaz externa de la puerta de enlace, en ella se mostrarán todas las conexiones en nombre de la puerta de enlace y no podremos determinar quién en la red ocupa el canal. Para ver esto, debe comenzar a ver la actividad de la red en la interfaz local. Esto no es difícil de hacer, simplemente ejecuta iftop con el parámetro:

# iftop -i eth1 -P

En mi caso, se trata de un usuario con IP 192.168.10.98, en el que realicé una comprobación de velocidad de Internet desde los servidores de Yandex.

Si no tiene una red grande ni muchos usuarios, con la ayuda de esta utilidad simple y efectiva puede determinar fácilmente quién, por ejemplo, descarga torrents o carga el canal.

Conclusión

Utilizando una distribución gratuita de Linux, pudimos configurar una puerta de enlace en cuestión de minutos para proporcionar acceso a Internet a las computadoras desde una red local. Me tomó unos 10 minutos configurar la puerta de enlace siguiendo estas instrucciones. Si es la primera vez que haces esto, claro que te llevará mucho más tiempo. Será necesario comprender los matices y he proporcionado muchos enlaces a material adicional.

Veamos lo que hicimos:

  1. Realizamos la configuración preliminar del servidor y lo preparamos para su funcionamiento.
  2. Se ha habilitado el enrutamiento.
  3. Configure el firewall.
  4. NAT habilitado.
  5. dnsmasq instalado y configurado para la organización. servicios DNS y DHCP.
  6. Analizamos la actividad de la red de la puerta de enlace y descubrimos quién está cargando el canal de Internet.

Esta es la funcionalidad mínima requerida para organizar el funcionamiento de la puerta de enlace en CentOS 7. El siguiente paso puede ser configurar un servidor proxy, un modelador de tráfico, configurar 2 o más proveedores y mucho más. Consideraré algo de esto en mis artículos futuros.

Permítanme recordarles que este artículo es parte de una única serie de artículos sobre el servidor.

Curso en línea sobre Linux

Si desea aprender a construir y mantener sistemas confiables y de alta disponibilidad, le recomiendo que se familiarice con curso online “Administrador Linux” en OTÚS. El curso no es para principiantes, para inscribirse necesitas conocimientos básicos de redes e instalación de Linux en una máquina virtual. La formación tiene una duración de cinco meses, después de los cuales los alumnos que hayan superado el curso podrán realizar entrevistas con los socios. Qué te aportará este curso:
  • Conocimiento de la arquitectura Linux.
  • Dominar métodos y herramientas modernos para el análisis y procesamiento de datos.
  • Capacidad para seleccionar una configuración para las tareas requeridas, gestionar procesos y garantizar la seguridad del sistema.
  • Dominio de las herramientas básicas de trabajo de un administrador de sistemas.
  • Comprensión de los detalles de la implementación, configuración y mantenimiento de redes construidas en Linux.
  • La capacidad de resolver rápidamente problemas emergentes y garantizar un funcionamiento estable e ininterrumpido del sistema.
Ponte a prueba en la prueba de acceso y consulta el programa para más detalles.


Arriba