LinuxParty
¿Cómo superviso mi servidor de nombres BIND 9/10 o cualquier otro DNS y tráfico del servidor de almacenamiento en caché/tráfico de red en Linux? ¿Cómo averiguo y veo las consultas de DNS actuales, como A, MX, PTR, etc., en tiempo real? ¿Cómo averiguo quién está consultando mi servidor DNS o un dominio específico o una dirección IP de cliente DNS específica?
El archivo de registro puede brindar la información requerida, pero dnstop es como el comando principal para monitorear el tráfico de DNS. Primero, es una pequeña herramienta para "escuchar la red" o analizar el archivo guardado. Luego puede recopilar e imprimir estadísticas sobre el tráfico DNS de la red local. A continuación, debe tener acceso de lectura a /dev/bpf*. bpf (Berkeley Packet Filter) proporciona una interfaz sin formato para las capas de enlace de datos de forma independiente del protocolo. Todos los paquetes en la red, incluso aquellos destinados a otros hosts, son accesibles a través de este mecanismo.
dnstop: monitoree el servidor BIND DNS (tráfico de red DNS) desde una terminal.
El dnstop puede leer paquetes del dispositivo de captura en vivo, como eth0 o un archivo de guardado tcpdump. Debe instalar este donde esté instalado su servidor DNS de almacenamiento en caché o el servidor BIND 9/10.
Instalación de dnstop en Linux
Escriba el siguiente comando apt o apt-get para instalar dnstop en Debian/Ubuntu Linux :
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install dnstop
Instalación de dnstop en el servidor Debian con BIND 9/10
Una nota sobre Red Hat / CentOS / RHEL / Fedora Linux
Primero, habilite el repositorio EPEL y luego instálelo usando el comando dnf o el comando yum. Por ejemplo:
$ sudo dnf search dnstop
$ sudo dnf in dnstop
Instale la última versión con el comando make (consulte a continuación el archivo RPM binario). Primero, obtenga el código fuente más reciente visitando el sitio web oficial de dnstop .
Patreon seguidores solo guías 🤓
Compilando dnstop usando el código fuente
Asegúrese de instalar GCC (compilador de C y C++) y herramientas de desarrollo en su caja RHEL/Fedora/CentOS/Rocky/Alma Linux.
Debe instalar bibliotecas de desarrollo, ingrese:
# dnf install libpcap-devel ncurses-devel
Ahora, tome el código fuente más reciente usando el comando wget, ingrese: Finalmente, compile e instale dnstop, ejecute:
$ cd /tmp
$ wget https://github.com/measurement-factory/dnstop/archive/refs/heads/master.zip
$ unzip master.zip
$ cd dnstop-master/$ ./configure
buscando gcc... gcc comprobando el nombre del archivo de salida predeterminado del compilador C... a.out comprobando si el compilador de C funciona... sí comprobando si estamos compilando de forma cruzada... no comprobando el sufijo de los ejecutables... comprobando el sufijo de los archivos de objetos... o comprobando si estamos usando el compilador GNU C... sí comprobando si gcc acepta -g... sí comprobando la opción gcc para aceptar ISO C89... no se necesita ninguna buscando una instalación compatible con BSD... /usr/bin/install -c comprobando initscr en -lncurses... sí .... ... .. comprobando strdup... sí comprobando strrchr... sí comprobando strstr... sí configurar: creando ./config.status config.status: creando Makefile config.status: creando config.h
Luego constrúyelo:
$ make
[...]
cc -g -O2 -DUSE_IPV6=1 -c -o dnstop.o dnstop.c gcc -g -O2 -DUSE_IPV6=1 -c -o hashtbl.o hashtbl.c gcc -g -O2 -DUSE_IPV6=1 -c - o inX_addr.o inX_addr.c gcc -g -O2 -DUSE_IPV6=1 -c -o lookup3.o lookup3.c gcc -g -O2 -DUSE_IPV6=1 -o dnstop dnstop.o hashtbl.o inX_addr.o lookup3.o -lresolv -lpcap -lncurses
Finalmente instale dnstop como usuario root:
$ sudo make install
install -m 755 dnstop /usr/local/bin mkdir -p /usr/local/share/man/man8 install -m 644 dnstop.8 /usr/local/share/man/man8
Cómo instalar dnstop bajo FreeBSD
Si está utilizando el sistema operativo FreeBSD , cómo instalar dnstop en FreeBSD .
Monitoreo del tráfico de red del servidor DNS con dnstop
Puede monitorear varios datos y consultas de dns usando las opciones de la línea de comandos. Puede monitorear varios datos y consultas de DNS utilizando las opciones de la línea de comandos. Sin embargo, dnstop necesita conocer el nombre de su interfaz de red. Por lo tanto, use el comando ifconfig o el comando ip para averiguar los nombres de las interfaces de red actuales :
$ ip link show
Salidas de muestra:
1 : lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 enlace/bucle invertido 00:00:00:00:00:00 brd 00:00:00:00:00:00 2 : enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether f2:3c: 92 :6d: 14 :bb brd ff:ff:ff:ff:ff: f
¿Cómo veo el tráfico dns con dnstop?
Simplemente, escriba el siguiente comando en un indicador de shell para monitorear el tráfico de la interfaz eth0: Esto es lo que veo en mi servidor autorizado para el dominio nixcraft.com/cyberciti.biz:
# dnstop {interface-name}
# dnstop eth0
# dnstop em0 # freebsd2 new queries, 220 total queries Mon Aug 4 05:56:50 2008 Sources count % ---------------- --------- ------ 180.248.xxx.26 72 32.7 77.89.xx.108 7 3.2 186.xxx.13.108 5 2.3 90.xxx.94.39 4 1.8 178.xx.77.83 4 1.8 187.xxx.149.23 4 1.8 xxx.13.249.70 4 1.8 1.xxx.169.102 4 1.8 189.xx.191.126 4 1.8 xxx.239.194.97 3 1.4
dnstop ejecutándose en mi servidor dns de almacenamiento en caché para clientes WIFI/LAN
Obtener estadísticas de dominios de segundo nivel
Puede obligar a dnstop a llevar la cuenta de los nombres hasta los niveles de nombre de dominio mediante la opción -l {nivel}. Por ejemplo, con -l 2 (predeterminado), dnstop mantendrá dos tablas: una con nombres de dominio de nivel superior (como .com, .org, .biz, etc.) y otra con nombres de dominio de segundo nivel (como co .in, col.uk).
# dnstop -l 3 eth0
Tenga en cuenta que aumentar el nivel proporciona más detalles, pero también requiere más memoria y CPU para realizar un seguimiento del tráfico DNS.
¿Cómo salgo o reinicio los contadores?
Para salir de dnstop, presione ^X (mantenga presionada la tecla [CTRL] y presione X). Presione ^R para restablecer los contadores.
¿Cómo averiguo el TLD que genera el tráfico máximo?
Mientras ejecuta dnstop, presione la tecla 1 para ver los nombres de consulta de primer nivel (TLD):
new queries, 1525 total queries Mon Aug 4 06:11:09 2008 TLD count % ------------------------------ --------- ------ net 520 34.1 biz 502 32.9 in-addr.arpa 454 29.8 in 23 1.5 org 15 1.0 com 11 0.7
Parece que este servidor DNS está sirviendo a más TLD .net. También puede obtener más información sobre el nombre de dominio real al indicar 2 teclas mientras ejecuta dnstop:
3 new queries, 1640 total queries Mon Aug 4 06:13:20 2008 SLD count % ------------------------------ --------- ------ linuxparty.es 557 34.0 ajuca.com 556 33.9 74.in-addr.arpa 34 2.1 208.in-addr.arpa 29 1.8 195.in-addr.arpa 28 1.7 192.in-addr.arpa 27 1.6 64.in-addr.arpa 27 1.6 theos.in 23 1.4 203.in-addr.arpa 20 1.2 202.in-addr.arpa 18 1.1 212.in-addr.arpa 15 0.9 nixcraft.com 13 0.8 217.in-addr.arpa 13 0.8 213.in-addr.arpa 12 0.7 128.in-addr.arpa 12 0.7 193.in-addr.arpa 12 0.7 simplyguide.org 12 0.7 cricketnow.in 3 0.2
To find out 3 level domain, hit 3 key:
www.cyberciti.biz 60 39.0 figs.cyberciti.biz 33 21.4 ns1.nixcraft.net 18 11.7 ns3.nixcraft.net 13 8.4 ns2.nixcraft.net 13 8.4 theos.in 5 3.2 nixcraft.com 5 3.2 cyberciti.biz 2 1.3 jobs.cyberciti.biz 1 0.6 bash.cyberciti.biz 1 0.6
How do I display the breakdown of query types seen?
You can easily find out most requested, query type (A, AAAA, PTR etc) by hinting t key
Query Type Count % ---------- --------- ------ A? 224 56.7 AAAA? 142 35.9 A6? 29 7.3
How do I find out who is connecting to my DNS server?
Hit d to view dns client IP address:
Source Query Name Count % -------------- ------------- --------- ------ xx.75.164.90 nixcraft.net 20 9.1 xx.75.164.90 cyberciti.biz 18 9.1 x.68.25.4 nixcraft.net 9 9.1 xxx.131.0.10 cyberciti.biz 5 4.5 xx.104.200.202 cyberciti.biz 4 4.5 202.xxx.0.2 cyberciti.biz 1 4.5
Option help
There many more option to provide detailed view of current, traffic, just type ? to view help for all run time options:
s - Sources list d - Destinations list t - Query types o - Opcodes r - Rcodes 1 - 1st level Query Names ! - with Sources 2 - 2nd level Query Names @ - with Sources 3 - 3rd level Query Names # - with Sources 4 - 4th level Query Names $ - with Sources 5 - 5th level Query Names % - with Sources 6 - 6th level Query Names ^ - with Sources 7 - 7th level Query Names & - with Sources 8 - 8th level Query Names * - with Sources 9 - 9th level Query Names ( - with Sources ^R - Reset counters ^X - Exit ? - this
Resumen
Encontré dnstop útil para los servidores de almacenamiento en caché y autorizados BIND 9/10 para que los usuarios de LAN obtengan tráfico DNS en mi red. Lea la documentación del comando dnstop usando el comando man o léala en línea en la página de inicio del proyecto :
man dnstop
-
Linux
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad
- RebornOS es una versión hermosa y fácil de usar de Arch Linux con abundantes opciones de escritorio
- Linus Torvalds sobre el 'hilarante' bombo de la IA
- Cambiar la hora en Linux con Chrony
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git
- Zorin OS 17.1 lanzado con soporte mejorado para aplicaciones de Windows, edición educativa
- Linux en el Escritorio: ¡Despega en 2024 con un 4% de Cuota!"