Casiva Agustin

Engineering, Development and IT Management

Hi there! 👋

I’m Agustin Casiva, I’m a Software Engineer from Argentina.

I have been working on IT for many years now, I worked in many fields of the industry, such as hardware support, networking, sysadmin but what I do love most is development.

I have worked for many organizations, public and private, local and remote, filling many roles.

My expertise is on Web Development, Linux, Open Source, CMSs, HTML, CSS, PHP, JavaScript, Backend Development, Product Development, Project Management, Team Leading, among others.

In 2013 I have founded 42mate, a Web Development Agency focused on the design, development, maintenance of Web Apps. I still work on 42mate where I work leading development teams and scoping new projects.

Besides 42mate I also work as an independent consultant where I provide services such as

  • Development Training, for individuals or teams.
  • Architecture Design and Review.
  • Tech Advisor for non tech startup founders.
  • Tech Advisor for Digital Design Agencies.

If you are interested on my services let’s talk!

More about me

Entorno de desarrollo para sitio con multiples dominios

Screen Shot 2014-02-28 at 4.01.46 PMActualmente me encuentro trabajando en un site que posee multiples dominios, mas de 20, y los cuales a su vez tienen subdominios, varios cientos por dominio.

Al comenzar el trabajo tenía unos dominios seteados para mi entorno local y otros para dev, todos definidos manualmente por la tabla de hosts de mi sistema.

El tema fué cuando empecé a trabajar en una nueva feature que necesitaba ser testeada en varios, y digo varios, dominios y sub dominios. Lo primero que se me ocurrió fue tratar de ver si la tabla de hosts podía manera expresiones del tipo *.mysitio.com para que pegue con todos los subdominios, de esa manera podía definir *.mysitio.com y *.mysitio.com.uy y testear en todos en esos dos dominios y sus respectivos subdominios. Lamentablemente encontré que nuestra querida tabla de hosts no soporta ningún tipo de expresiones así que tuve que seguir buscando.

En la búsqueda me encuentro con una herramienta que me convenció llamada DNSchef, esta herramienta es un proxy para DNSs, escucha las peticiones de DNS, si encuentra una regla local devuelve la ip que diga la regla sino forwardea la petición a un DNS, por defecto el 8.8.8.8 (el de google). Esta herramienta tiene varias formas de uso, la que mas me gusto es la siguiente.

Bajar la aplicación (requiere python, disponible para linux, mac y windows) y Descomprimiarla (tar zxvf dnschef-0.2.1.tar.gz).

Entrar al directorio de la herramienta y crear un archivo ini con las reglas de DNS a modificar. Estas fueron las mías

[A]
*.mysitio.com.ar=127.0.0.1
*.mysitio.com.br=127.0.0.1
*.mysitio.com.uy=22.22.22.22

Donde, 22.22.22.22 sería la dirección del servidor de Dev para pruebas en Dev, y 127.0.0.1 es mi local.

Para levantar el proxy deben correr este comando

sudo python dnschef.py --file mireglas.ini -q
[*] DNSChef started on interface: 127.0.0.1
[*] Using the following nameservers: 8.8.8.8
[+] Cooking A replies for domain *.mysitio.com.ar with '127.0.0.1'
[+] Cooking A replies for domain *.mysitio.com.br with '127.0.0.1'
[+] Cooking A replies for domain *.mysitio.com.uy with '22.22.22.22'

El último paso es ir a Networks, Intefaces, DNSs (o en /etc/resolv.conf) y buscar donde cambiar el dns de su conexión para que use 127.0.0.1 como servidor de DNS.

Y listo, con eso su browser al usar cualquiercosa.mysitio.com.ar va intentar acceder a 127.0.0.1.

Para mas info visiten el sitio de DNSChef

https://thesprawl.org/projects/dnschef/

Por si me preguntan, NO, creo que no tiene ninguna relación con Chef.

Leave a Reply

Your email address will not be published. Required fields are marked *

*