Situacion:
El dia de ayer tuve la necesidad de configurar los reversos de un prefijo IPv6 en mis servidores Bind; honestamente era la primera vez que tenia que hacer dicha tarea y por ello recurri a nuestro buen amigo google
Solucion:
En fin, luego de realizar una pequena busqueda consegui la siguiente herramienta en linea y gratuita que decidi compartirla con ustedes debido a que es excelente: http://www.fpsn.net/tools&tool=ipv6-inaddr. La herramienta es un "constructor de reversos IPv6"
La herramienta es muy sencilla de utilizar, la misma te hace las preguntas de: a) prefijo IPv6, b) email del responsable de la zona, c) servidor DNS primario y secundario y d) las direcciones IPv6 a las cuales deseas crearle el nombre.
Lo interesante de la herramienta es que te genera tanto el codigo a colocar dentro del named.conf como el del archivo de zona. Luego solo tienes que hacer copy/paste.
Les dejo otra vez el link: http://www.fpsn.net/tools&tool=ipv6-inaddr
Probar conexiones IPv6: http://acostanetwork.blogspot.com/2009/04/probar-ipv6.html y http://www.whatismyipv6.co
Luego de utilizar la herramienta todo funciono perfecto!!
Blog en espanol destinado a diferentes temas tecnicos principalmente en IT y Networking. Se desea cubrir Linux, DNS, DNSSEC, RPKI, BGP, Cisco, Programacion (Bash, Python, etc), Protocolos de Enrutamiento, Seguridad en Redes, VoIP.
sábado, 2 de octubre de 2010
viernes, 1 de octubre de 2010
Sendmail e IPv6. Hacer que sendmail escuche en IPv6
Problema:
Tengo un servidor de correo en Linux Debian con Sendmail, en IPv4 todo funciona bien pero no escucha conexiones en IPv6
Escenario:
Servidor Debian con Sendmail 8.14.3 e IPv6 configurado
Procedimiento:
Primero verificar que efectivamente Sendmail no escucha en IPv6. Por ejemplo:
#netstat -pan | grep sendmail
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 2596/sendmail: MTA:
unix 2 [ ACC ] STREAM LISTENING 4198 1025/mysqld / var/run/mysqld/mysqld.sock
unix 2 [ ACC ] STREAM LISTENING 13539 2596/sendmail: MTA: / var/run/sendmail/mta/smcontrol
unix 2 [ ] DGRAM 13535 2596/sendmail: MTA:
En la salida anterior notamos que sendmail se encuentra escuchando solo sobre la red IPv4.
Solucion:
La solucion es indicarle al Sendmail que también levante sobre la familia Inet6. Para ello es necesario modificar el sendmail.mc para reconstruir el sendmail.cf y luego reiniciar el sendmail. Los pasos son los siguientes:
1) Editar el sendmail.mc y agregar las siguientes lineas:
DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=DIRIPV6')dnl
DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl
OJO: Sustituir DIRIPV6 por tu dirección IPv6
2) Ejecutar sendmailconfig (para procedar el sendmail.mc con m4 y generar el .cf)
3) Luego de ejecutar el comando anterior lo siguiente es siempre indicarle que Y en las siguientes preguntas:
Configure sendmail with the existing /etc/mail/sendmail.conf? [Y] y
Configure sendmail with the existing /etc/mail/sendmail.mc? [Y] y
Reload the running sendmail now with the new configuration? [Y] y
Verificar:
Para verificar ejecuta el comando:
#netstat -pan | grep sendmail
Realiza un telnet de la siguiente manera:
#telnet ::1 25
debes recibir respuesta similar a:
Trying ::1...
Connected to ::1.
Escape character is '^]'.
220 ipv6.para.com ESMTP Sendmail 8.14.3/8.14.3/Debian-9.1ubuntu1; Fri, 1 Oct 20 10 11:52:48 -0430; (No UCE/UBE) logging access from: localhost(OK)-localhost [IPv6:::1]
Suerte, espero haya sido util.
Tengo un servidor de correo en Linux Debian con Sendmail, en IPv4 todo funciona bien pero no escucha conexiones en IPv6
Escenario:
Servidor Debian con Sendmail 8.14.3 e IPv6 configurado
Procedimiento:
Primero verificar que efectivamente Sendmail no escucha en IPv6. Por ejemplo:
#netstat -pan | grep sendmail
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 2596/sendmail: MTA:
unix 2 [ ACC ] STREAM LISTENING 4198 1025/mysqld / var/run/mysqld/mysqld.sock
unix 2 [ ACC ] STREAM LISTENING 13539 2596/sendmail: MTA: / var/run/sendmail/mta/smcontrol
unix 2 [ ] DGRAM 13535 2596/sendmail: MTA:
En la salida anterior notamos que sendmail se encuentra escuchando solo sobre la red IPv4.
Solucion:
La solucion es indicarle al Sendmail que también levante sobre la familia Inet6. Para ello es necesario modificar el sendmail.mc para reconstruir el sendmail.cf y luego reiniciar el sendmail. Los pasos son los siguientes:
1) Editar el sendmail.mc y agregar las siguientes lineas:
DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=DIRIPV6')dnl
DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl
OJO: Sustituir DIRIPV6 por tu dirección IPv6
2) Ejecutar sendmailconfig (para procedar el sendmail.mc con m4 y generar el .cf)
3) Luego de ejecutar el comando anterior lo siguiente es siempre indicarle que Y en las siguientes preguntas:
Configure sendmail with the existing /etc/mail/sendmail.conf? [Y] y
Configure sendmail with the existing /etc/mail/sendmail.mc? [Y] y
Reload the running sendmail now with the new configuration? [Y] y
Verificar:
Para verificar ejecuta el comando:
#netstat -pan | grep sendmail
Realiza un telnet de la siguiente manera:
#telnet ::1 25
debes recibir respuesta similar a:
Trying ::1...
Connected to ::1.
Escape character is '^]'.
220 ipv6.para.com ESMTP Sendmail 8.14.3/8.14.3/Debian-9.1ubuntu1; Fri, 1 Oct 20 10 11:52:48 -0430; (No UCE/UBE) logging access from: localhost(OK)-localhost [IPv6:::1]
Suerte, espero haya sido util.
lunes, 27 de septiembre de 2010
Ejemplos de manipulacion de port forwarding utilizando NAT en routers Cisco
Situacion:
Tengo una granja de servidores (ejemplo Web, Mail y SSH) y tengo solo una direccion publica en mi router de borde.
Escenario:
{Internet} --- {RTR con IP publica} ------- {Granja de Servidores}
IP Publica: 11.12.13.14
Mail Server: 192.168.1.5
Web Server: 192.168.1.4
SSH: 192.168.1.6
IP WAN: 11.12.13.14/30
IP LAN: 192.168.1.1/24
Solucion:
La solucion es configurar en el router Cisco NAT de tal manera de que al momento de recibir un paquete TCP al puerto destino correspondiente sepa a donde enviarlo.
En este sentido, es necesario que el router re-envie los paquetes (port forwarding) de la siguiente manera:
Paquetes destinados al IP 11.12.13.14 al puerto destino 25 lo envie al Mail Server (192.168.1.5)
Paquetes destinados al IP 11.12.13.14 al puerto destino 80 lo envie al Web Server (192.168.1.4)
Paquetes destinados al IP 11.12.13.14 al puerto destino 22 lo envie al SSH Server (192.168.1.6)
Procedimiento:
La configuracion del router seria la siguiente:
! ESTA ES LA INTERFAZ QUE DA HACIA LA GRANJA DE SERVIDORES
interface FastEthernet0
description Mi granja de servidores
ip address 192.168.1.1 255.255.255.0
ip nat inside
!
! ESTA ES LA INTERFAZ QUE DA HACIA INTERNET
interface Serial0
description Hacia Internet
ip address 11.12.13.14 255.255.255.252
ip nat outside
!
!En la siguiente linea se indica que todo lo que apunte al IP 11.12.13.14 al puerto 80 lo envie al !servidor web
ip nat inside source static tcp 192.168.1.4 80 11.12.13.14 80 extendable
!En la siguiente linea se indica que todo lo que apunte al IP 11.12.13.14 al puerto 25 lo envie al !servidor mail
ip nat inside source static tcp 192.168.1.5 25 11.12.13.14 25 extendable
!En la siguiente linea se indica que todo lo que apunte al IP 11.12.13.14 al puerto 22 lo envie al !servidor ssh
ip nat inside source static tcp 192.168.1.4 22 11.12.13.14 22 extendable
Tips:
Un dato muy interesante que es que se puede manipular el puerto. Por ejemplo, supongamos que tenemos un servidor web "escondido" podemos manejarlo con un puerto diferente al 80. Digamos que queremos que la gente desde Internet acceda a nuestro servidor Web utilizando el puerto 61234 podemos hacer lo siguiente:
!El usuario desde Internet debe acceder a http://11.12.13.14:61234
ip nat inside source static tcp 192.168.1.4 80 11.12.13.14 61234 extendable
Lo anterior es muy util para escoder servicios, ahorrar direcciones IP y darle seguridad a la red.
Espero haya sido de tu utilidad,
Suerte!
Situacion:
El reproductor Windows Media Player no reproduce videos AVI.
El reproductor Windows Media Player solo reproduce el audio del archivo .avi
Solucion:
Existen muchas soluciones, yo solo indicare la que me funciono facil y es gratis.
La solucion es instalar el paquete K-Lite_Codec_Pack_640_Full el cual puede conseguirse en:
http://www.warezhn.com/84-k-lite-codec-pack-640-full.html
Durante la instalacion se pueden escojer muchas opciones sin embargo sin modificar las mismas todo funciona perfecto.
Suerte, espero sea de tu utilidad
El reproductor Windows Media Player no reproduce videos AVI.
El reproductor Windows Media Player solo reproduce el audio del archivo .avi
Solucion:
Existen muchas soluciones, yo solo indicare la que me funciono facil y es gratis.
La solucion es instalar el paquete K-Lite_Codec_Pack_640_Full el cual puede conseguirse en:
http://www.warezhn.com/84-k-lite-codec-pack-640-full.html
Durante la instalacion se pueden escojer muchas opciones sin embargo sin modificar las mismas todo funciona perfecto.
Suerte, espero sea de tu utilidad
viernes, 24 de septiembre de 2010
Ping utilizando TCL en Cisco
Problema:
Deseo realizar ping a muchas direcciones IP desde mi router Cisco pero deseo automatizarlo un poco
Procedimiento:
La solución al problema es realizar un pequeño script dentro del router Cisco que recibe como argumento las direcciones IP a las cuales se les desea hacer ping.
TCL (Tool Control Languaje) es un lenguaje de scripting utilizado en los IOS "recientes" de Cisco que permiten facilitar parte de la administración
Ejemplo del script en TCL:
foreach address {
192.168.126.10
192.168.126.11
192.168.126.12
192.168.126.13
192.168.126.14
192.168.126.15
192.168.126.16
192.168.126.17
192.168.126.18
192.168.126.19
192.168.126.20
192.168.126.21
192.168.126.22
192.168.126.23
} {ping $i}
La salida del comando será la siguiente y lo mejor es que se ejecuta solo hasta hacerle ping a todos los host :) (parte de salida suprimida)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.126.10, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.126.11, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.126.12, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.126.13, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.126.14, timeout is 2 seconds:
!!!!!
Espero sea de tu utilidad,
viernes, 27 de agosto de 2010
Manipular VLANs con Linux
Objetivo:
Configurar, crear, remover y manipular VLANs con Linux conectado a un LAN Switch Cisco (basado en IOS)
Pre-requisitos:
Para manipular las VLANs en Linux hay tres puntos principales
a) Levantar el modulo 8021q
b) Tener instalado el paquete vlans-utils
c) El equipo con Linux debe estar conectado a un LAN Switch capaz de entender encapsulamiento 802.1q (dot1q).
Procedimiento:
a) Para levantar el modulo 8021q utilizar el comando
#modprobe 8021q
b) Para instalar el paquete vlans-utils en el caso de Mandriva se puede realizar con el comando:
#urpmi vlan-utils
c) Posteriormente se pueden crear las vlans necesarias
Ejemplos:
a) Crear la VLAN 2 en la interfaz eth0
vconfig add eth0 2
b) Crear la VLAN 8 en la interfaz eth1
vconfig add eth1 8
c) Remover la VLAN 3 de la interfaz eth5
vconfig rem eth5 3
d) Configurar la dirección IP a la vlan 8 en la interfaz eth1 (creada en el paso b)
ifconfig eth1.8 192.168.1.1 netmask 255.255.255.0
e) Configurar la dirección IP a la vlan 3 en la interfaz eth5 (creada en el paso c)
ifconfig eth5.3 192.168.1.1 netmask 255.255.255.0
f) Eliminar/remover la VLAN 2 en la interfaz eth0
vconfig rem eth0 2
g) Remover todas las vlans y comenzar desde 0
Recomiendo bajar el modulo 8021q y volver a levantarlo
modprobe -r 8021q; sleep 1; modprobe 8021q
Revisión:
1) Chequear el modulo 8021q se encuentre cargado en el equipo:
#lsmod | grep 8021q
8021q 17672 0
2) Revisar todas las interfaces:
#ifconfig -a
3) Chequear las VLANs en el directorio virtual /proc
[root@pemon SCRIPTS]# more /proc/net/vlan/config
VLAN Dev name | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
eth1.21 | 21 | eth1
eth1.19 | 19 | eth1
Del lado del LAN Switch Cisco:
interface FastEthernet0/26
switchport trunk encapsulation dot1q
switchport mode trunk
Eso es todo,
Suerte!
check out this page
check out this page
sábado, 21 de agosto de 2010
Cliente IPv6 Freenet6 en Linux
Introduccion:
En otros post he indicado por ejemplo como utilizar el cliente Teredo (Miredo) en Linux para levantar pseudo-tuneles IPv6 sobre IPv4.
En esta oportunidad voy a indicarte lo que considero una mejor opcion como metodo de transicion hacia IPv6, se llama Freenet6.
Teredo se basa en transportar paquetes IPv6 sobre paquetes UDP que a su vez viajan sobre IPv4. Freenet en cambio transporta IPv6 sobre tuneles TSP (puerto 3653). Por otro lado, las consultas DNS de los sistemas operativos (varia el comportamiento) se comportan diferentes cuando poseen direcciones IPv6 Terero (2001:0::/32) a cuando poseen direcciones IPv6 nativas; por ejemplo http://technet.microsoft.com/en-us/library/bb727035.aspx#ECAA
Situacion:
Deseo instalar y utilizar el cliente freenet6 en Linux y asi tener conectividad al mundo IPv6
Pasos:
1) Lo primero es conseguir los fuentes de Freenet aqui:
http://gogonet.gogo6.com/page/freenet6-services
2) En mi caso me faltaba el compilador g++ el cual instale con el comando: urpmi gcc-c++ (en el caso de Mandriva)
3) Luego es realizar la instalacion
a) # tar -zxvf gogoc-1_2-RELEASE.tar.gz
b) # make installdir=/usr/local/gogoc install (notese que se pasa como parametro el directorio de instalacion)
4) Finalmente ejecutar el binario:
cd /usr/local/gogoc/bin; ./gogoc (esperar aprox 10 segundos a que se conecte al servidor, obtenga DIR IP, etc)
Chequeo:
En las primeras oportunidades recomiendo ejecutar gogoc con la opcion -n (./gogoc -n) que significa foreground que se pueda apreciar la direccion IP que se reciba y todo eso.
Posteriormente para probar puedes realizar un ping6 a ipv6.google.com o un ping6 a portalipv6.lacnic.net
Al momento de ejecutar gogoc debe crearse la interfaz tun, la puedes monitorear mientras se negocia el tunel y veras cuando finalmente toma direccion IP
Mas informacion:
* RFC TSP http://tools.ietf.org/html/rfc5572
* Informacion General TSP http://en.wikipedia.org/wiki/Tunnel_Setup_Protocol
* Comportamiento de los queries DNS en ambientes IPv6 http://technet.microsoft.com/en-us/library/bb727035.aspx#ECAA
En otros post he indicado por ejemplo como utilizar el cliente Teredo (Miredo) en Linux para levantar pseudo-tuneles IPv6 sobre IPv4.
En esta oportunidad voy a indicarte lo que considero una mejor opcion como metodo de transicion hacia IPv6, se llama Freenet6.
Teredo se basa en transportar paquetes IPv6 sobre paquetes UDP que a su vez viajan sobre IPv4. Freenet en cambio transporta IPv6 sobre tuneles TSP (puerto 3653). Por otro lado, las consultas DNS de los sistemas operativos (varia el comportamiento) se comportan diferentes cuando poseen direcciones IPv6 Terero (2001:0::/32) a cuando poseen direcciones IPv6 nativas; por ejemplo http://technet.microsoft.com/en-us/library/bb727035.aspx#ECAA
Situacion:
Deseo instalar y utilizar el cliente freenet6 en Linux y asi tener conectividad al mundo IPv6
Pasos:
1) Lo primero es conseguir los fuentes de Freenet aqui:
http://gogonet.gogo6.com/page/freenet6-services
2) En mi caso me faltaba el compilador g++ el cual instale con el comando: urpmi gcc-c++ (en el caso de Mandriva)
3) Luego es realizar la instalacion
a) # tar -zxvf gogoc-1_2-RELEASE.tar.gz
b) # make installdir=/usr/local/gogoc install (notese que se pasa como parametro el directorio de instalacion)
4) Finalmente ejecutar el binario:
cd /usr/local/gogoc/bin; ./gogoc (esperar aprox 10 segundos a que se conecte al servidor, obtenga DIR IP, etc)
Chequeo:
En las primeras oportunidades recomiendo ejecutar gogoc con la opcion -n (./gogoc -n) que significa foreground que se pueda apreciar la direccion IP que se reciba y todo eso.
Posteriormente para probar puedes realizar un ping6 a ipv6.google.com o un ping6 a portalipv6.lacnic.net
Al momento de ejecutar gogoc debe crearse la interfaz tun, la puedes monitorear mientras se negocia el tunel y veras cuando finalmente toma direccion IP
Mas informacion:
* RFC TSP http://tools.ietf.org/html/rfc5572
* Informacion General TSP http://en.wikipedia.org/wiki/Tunnel_Setup_Protocol
* Comportamiento de los queries DNS en ambientes IPv6 http://technet.microsoft.com/en-us/library/bb727035.aspx#ECAA
Suscribirse a:
Entradas (Atom)
Solución a: Error: eth0 interface name is not allowed for R2 node when network mode is not set to none
Problema: Containerlab devuelve un error similar: Error: eth0 interface name is not allowed for R2 node when network mode is not set to no...
-
Debido al crecimiento moderado que ha tenido el presente blog se me ocurrió añadir/integrar las estadisticas de google analytics a mi blog. ...
-
Introduccion: En algunas ocasiones es necesario "bajar" o deshabilitar iptables en nuestro Linux, el procedimiento depende de...
-
Saludos, Lo primero que debemos de hacer para quitar el stacking entre los switches es desconectar los cables Stack que los unen.... Es buen...