Redes

Comandos de red avanzados de Linux

Comandos de red avanzados de Linux
Los comandos nslookup y host para consultar registros DNS
El comando dig para consultar registros DNS
El comando traceroute para diagnosticar problemas de red
El comando scp para transferir archivos entre dispositivos
El comando nc (netcat) para escanear puertos y transferir archivos
El comando rsync para clonar directorios entre dispositivos

El presente tutorial es una continuación de los comandos de red básicos de Linux, a pesar de que comienza con comandos fáciles para la búsqueda de DNS, todos los comandos son esenciales para diagnosticar problemas. En este tutorial se muestran y explican brevemente algunos ejemplos de cada comando.

Los comandos nslookup y host para consultar registros DNS

Según Wikipedia "nslookup es una herramienta de línea de comandos de administración de red disponible en muchos sistemas operativos de computadoras para consultar el sistema de nombres de dominio (DNS) para obtener el nombre de dominio o la asignación de direcciones IP, u otros registros DNS."

En el siguiente ejemplo, el comando nslookup se usa para resolver la dirección IP de linuxhint.com.

nslookup linuxhint.com

El siguiente ejemplo muestra los registros mx para linuxhint.com aplicando la opción -tipo = mx.

nslookup -type = mx linuxhint.com

Alternativamente, puede usar el host de comando para obtener tanto la resolución de búsqueda como los registros mx:

host linuxhint.com

El comando dig para consultar registros DNS

La cavar El comando (Domain Information Groper) necesita una descripción más larga para comprender su salida (consulte la sección Comprensión de la salida del comando dig)

dig linuxhint.com

Donde (Comprensión de la salida del comando dig):

La primera linea ; <<>> DiG 9.11.5-P4-5.1-Debian <<>> linuxhint.com muestra la versión de excavación utilizada.
Las siguientes líneas especifican que dig obtuvo una respuesta a una consulta sin errores, su número de identificación, la sección de banderas en este caso muestran que está imprimiendo una respuesta de consulta (qr), Recursión deseada (rd) y Recursión disponible (ra). El resto imprime la cantidad de resultados.

;; Tengo respuesta:
;; - >> ENCABEZADO<<- opcode: QUERY, status: NOERROR, id: 6034
;; banderas: qr rd ra; CONSULTA: 1, RESPUESTA: 1, AUTORIDAD: 0, ADICIONAL: 1

Las siguientes líneas muestran la compatibilidad con EDNS (Mecanismos de extensión para DNS), mientras que la sección Pregunta muestra lo que se preguntó (linuxhint.com Dirección).

;; OPT PSEUDOSECCIÓN:
; EDNS: versión: 0, banderas :; udp: 512
;; SECCIÓN DE PREGUNTAS:
; linuxhint.com.

La sección de respuestas da el resultado, linuxhint.com dirección IP (A).

;; RESPUESTA SECCIÓN:
linuxhint.com. 3599 EN 64.91.238.144

El resto es una descripción adicional sobre cómo se realizó la consulta, hora, servidor DNS y tamaño.

;; Tiempo de consulta: 192 ms
;; SERVIDOR: 8.8.8.8 # 53 (8.8.8.8)
;; CUÁNDO: Mar 10 de septiembre 22:45:54 -03 2019
;; TAMAÑO DE MENSAJE rcvd: 58

Es importante resaltar todo lo mencionado anteriormente solo las líneas sin ";" son relevantes, las líneas que comienzan con ";" son comentarios.
De forma predeterminada, excavar funciona a través de nuestro DNS local (en Linux especificado en el archivo / etc / resolv.conf). Podemos especificar un DNS agregando un @ prefijo.
El siguiente ejemplo instruye a excavar para usar el 1.1.1.1 DNS y evita todos los comentarios con la opción +corto.

cavar @ 1.1.1.1 linuxhint.com + corto

Para finalizar la introducción a excavar, un ejemplo final que muestra los registros CNAME para LinuxHInt:

dig linuxhint.com CNAME

Puede usar dig para obtener cualquier tipo de registro DNS como registros MX.

El comando traceroute para diagnosticar problemas de red

Todos los sistemas operativos modernos incluyen la función traceroute (explicada recientemente en Nmap traceroute). Esta función es excelente para diagnosticar problemas de red, incluidas pruebas de velocidad y paquetes que no pueden llegar al destino. Cuando el tráfico pasa por Internet, cada dispositivo de enrutamiento intermedio se denomina "salto", traceroute ayuda a identificar qué saltos están afectando nuestro tráfico de alguna manera, por ejemplo, retrasándolo o bloqueándolo.

El siguiente ejemplo muestra un traceroute simple, sin opciones, para linuxhint.com

traceroute linuxhint.com

En el ejemplo anterior, ve 15 saltos o dispositivos de enrutamiento desde mi enrutador local 192.168.0.1 para llegar a linuxhint.com, algunos de los saltos, 2, 10 y 11 no responden a los paquetes de traceroute (* * *).
Tomemos una sola línea para verificar:

3 10.172.102.109 (10.172.102.109) 16.695 ms 20.178 ms 22.081 ms

En el lado derecho puede ver el tiempo de ida y vuelta (RTT), da tres veces porque por defecto traceroute envía 3 paquetes, puede modificarlo aplicando el -q opción.

El siguiente ejemplo mostrará solo un resultado RTT por línea:

traceroute -q 1 linuxhint.com

En caso de que la conexión sea lenta o no pueda llegar al destino mediante el uso de traceroute, puede determinar qué salto está generando el problema.

El comando scp para transferir archivos entre dispositivos

El comando scp es un comando que todo administrador o usuario debe saber para transferir archivos entre dispositivos Linux, se explicó en profundidad en Uso del comando scp, pero también se citará en este tutorial.

El primer ejemplo muestra cómo copiar un archivo desde una computadora remota a la computadora local, la sintaxis es:

nombre de usuario scp @ X.X.X.X: / ruta / a / remoto / archivo / local / directorio / donde / a / guardar / el / archivo

Dónde:
scp = llama al programa
Nombre de usuario = reemplácelo por el nombre de usuario adecuado
@ = separa el nombre de usuario y el host / ip
X.X.X.X = reemplácelo por el host / ip adecuado.
: / ruta / a / remoto / archivo = determinar la ubicación remota del archivo a buscar.

/ local / directorio / donde / para / guardar / el / archivo = reemplácelo por el directorio local donde desea almacenar el archivo.

En mi caso, me conecto al dispositivo remoto con IP 192.168.0.1 usando el usuario linuxhint para copiar el Vagrantfile archivo que se almacena en el directorio de inicio del usuario linuxhint, y lo copio en la casa del usuario local llamado compartido.

scp linuxhint @ 192.168.0.3: / inicio / linuxhint / Vagrantfile / inicio / compartido /

El siguiente ejemplo muestra cómo copiar un archivo local a un dispositivo remoto:

scp / home / shared / Vagrantfile linuxhint @ 192.168.0.3: / inicio / linuxhint / Escritorio

Dónde:
scp = llama al programa
NOMBRE DEL ARCHIVO = nombre del archivo a transferir
Nombre de usuario = reemplácelo por el nombre de usuario adecuado
@ = separa el nombre de usuario y el host / ip
X.X.X.X = reemplácelo por el host / ip adecuado
: / directorio / remoto = determinar la ubicación remota para almacenar el archivo transferido.

El comando nc para transferir archivos y escanear puertos

La Carolina del Norte El comando (netcat) se encuentra entre las herramientas más útiles para los administradores de sistemas, Carolina del Norte es útil para muchas tareas como redireccionamiento, escaneo de puertos, diagnóstico del servidor, transferencia de archivos, monitoreo de red y más. Este tutorial muestra dos ejemplos de Carolina del Norte uso de comando para escanear puertos y transferir archivos a través de la red.

El siguiente ejemplo muestra cómo se usa nc para enviar un archivo llamado "linuxhint" desde una computadora a otra a través del puerto 22.

En la computadora de destino, ejecute el siguiente comando:

nc -l 22> linuxhint

En la computadora emisora, ejecute:

nc 192.168.0.14 22 < linuxhint

Verifico que el archivo está ahí ejecutando ls

El siguiente ejemplo muestra cómo se usa nc para escanear el rango del puerto 22-80 en linuxhint.com

nc -z -v linuxhint.com 22-80

El comando rsync para clonar y archivar directorios entre dispositivos

El comando rsync es una gran herramienta para clonar archivos y directorios de un dispositivo a otro, puede ser útil para mantener la sincronización en tiempo real entre dispositivos, puede mantener una copia de seguridad actualizada, crear un script para la protección continua de datos y más. Los siguientes 2 ejemplos muestran cómo sincronizar archivos y directorios desde y hacia un servidor.

La sintaxis para copiar un archivo de un servidor a un directorio es:

rsync  @:

En el siguiente ejemplo, copio el archivo llamado linuxhint al directorio actual o de trabajo (.)

rsync linuxhint @ 192.168.0.3: / inicio / linuxhint / linuxhint

Verifico la transferencia de archivos con ejecutando  ls en el directorio de trabajo

El siguiente ejemplo muestra cómo clonar un directorio local en un servidor remoto, la sintaxis es:

rsync -avz   @
:

En este ejemplo práctico, clono un directorio llamado rsync al directorio Desktop del linuxhint usuario en el servidor remoto.

rsync -avz rsync / linuxhint @ 192.168.0.3: / inicio / linuxhint / Escritorio

Dónde:
a = archivo
z = comprimir
v = verbosidad

Espero que haya encontrado útil esta descripción sobre importantes comandos de red de Linux para comprender su importancia al trabajar con redes. Siga siguiendo LinuxHint para obtener nuevos consejos y actualizaciones sobre Linux y redes.

Los mejores juegos para jugar con el seguimiento de manos
Oculus Quest presentó recientemente la gran idea del seguimiento manual sin controladores. Con un número cada vez mayor de juegos y actividades que ej...
Cómo mostrar la superposición de OSD en aplicaciones y juegos de Linux en pantalla completa
Jugar juegos en pantalla completa o usar aplicaciones en modo de pantalla completa sin distracciones puede aislarlo de la información relevante del si...
Las 5 mejores cartas de captura de juegos
Todos hemos visto y amado la transmisión de juegos en YouTube. PewDiePie, Jakesepticye y Markiplier son solo algunos de los mejores jugadores que han ...