{"id":81,"date":"2012-02-25T03:08:53","date_gmt":"2012-02-25T02:08:53","guid":{"rendered":"http:\/\/www.jbahillo.com\/?page_id=81"},"modified":"2013-10-15T19:56:13","modified_gmt":"2013-10-15T18:56:13","slug":"bash-cdmon-2","status":"publish","type":"page","link":"https:\/\/www.jbahillo.com\/?page_id=81","title":{"rendered":"[Bash] Cdmon"},"content":{"rendered":"<p>Este script es uno que hice har\u00e1 4 o 5 a\u00f1os, cuando usaba un dominio que ten\u00eda contratado con <a href=\"https:\/\/www.cdmon.com\/cas\/\" title=\"CDMON\" target=\"_blank\">CDMON<\/a>, para poder utilizarlo con un servidor que ten\u00eda en casa (y por tanto con IP din\u00e1mica). Interact\u00faa con la API de CDMON y actualiza la IP en el sistema de DNS Din\u00e1mica de este ISP.<br \/>\nActualmente, no obstante existe una versi\u00f3n mejorada en http:\/\/info.cdmon.com\/uploads\/dnsdinamico\/dincdmon.txt<\/p>\n<pre class=\"brush: bash; auto-links: true; collapse: false; gutter: true; first-line: 1; highlight: []; html-script: false; light: false; pad-line-numbers: true; toolbar: true; wrap-lines: true\">\r\n## Datos de usuario de CDMON.ORG\r\n# USUARIO = es el nombre de usuario para entrar en CDMON.ORG\r\n# PASSWORDMD5 = Es la contrasenia para entrar en CDMON.ORG encriptada con\r\n#el algoritmo MD5. Hay programas (tambien online) para ello.\r\n#USUARIO=tu-usuario-de-cdmonPASSWORDMD5=tu-password-de-cdmon-encriptada\r\n## Datos propios de la maquina donde ejecutamos el script# IFZ = Interfaz de red que se conecta a Internet\r\n# EMAIL = Direccion de correo donde enviar las notificaciones de los cambios#comentamos esto ya que no lo necesitaremos para esta variante\r\n#IFZ=eth1EMAIL=tu@correo.com#Dejamos de usar cdmon para obtener la IP, ya que siempre nos va a dar la IP que estamos usando en este momento\r\n#GET_IP=&quot;https:\/\/www.cdmon.com\/pcontrol\/dnsdinamico\/onlineService.php?enctype=MD5&amp;n=$USUARIO&amp;p=$PASSWORDMD5&quot;\r\n#IP_DNS_ONLINE=`wget $GET_IP -o \/dev\/null -q -O \/dev\/stdout | cut -f2 -d\\&amp; | cut -f2 -d=`\r\n#En su lugar, primero observamos hacia donde esta resolviendo nuestro dominio. En mi caso concreto, como lo tengo aliaseado en host para poder acceder a traves de la DNS, especifico un servidor de dns\r\nIP_DNS_ONLINE=$(host tu.dominio.com 212.145.4.98 | grep tu.dominio.com | awk {\u2018print $4\u2032})\r\n#Como no podemos sacar la IP a trav\u00e9s de ifconfig, ya que nos devuelve la IP interna y nola real, la sacamos por whatismyip\r\nIP_ACTUAL=`lynx -dump http:\/\/www.whatismyip.com | grep &quot;Your IP Is&quot;| cut -c 38-52`echo $IP_DNS_ONLINE $IP_ACTUAL\r\n#Eliminamos el correo con las dos IP\u2019s ya que si es la misma molesta m\u00e1s que otra cosaif [ &quot;$IP_DNS_ONLINE&quot; != &quot;$IP_ACTUAL&quot; ]; then    CHANGE_IP=&quot;https:\/\/www.cdmon.com\/pcontrol\/dnsdinamico\/onlineService.php?enctype=MD5&amp;n=$USUARIO&amp;p=$PASSWORDMD5&amp;cip=$IP_ACTUAL\r\nRESULTADO=`wget $CHANGE_IP -o \/dev\/null -O \/dev\/stdout`\r\nMENSAJE=&quot;Ha habido un cambio en la IP de los nombres de dominio.\\n&quot;\r\nMENSAJE=$MENSAJE&quot;Se han actualizado los servidores DNS dinamicos de CDMON.\\n&quot;\r\nMENSAJE=$MENSAJE&quot;El resultado devuelto ha sido el siguiente:\\n&quot;\r\necho -e $IP_DNS_ONLINE $IP_ACTUAL $MENSAJE $RESULTADO | mail $EMAIL -s &quot;cambio de IP&quot;\r\nfi\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Este script es uno que hice har\u00e1 4 o 5 a\u00f1os, cuando usaba un dominio que ten\u00eda contratado con CDMON, para poder utilizarlo con un servidor que ten\u00eda en casa (y por tanto con IP din\u00e1mica). Interact\u00faa con la API&hellip;<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/www.jbahillo.com\/?page_id=81\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":21,"featured_media":0,"parent":722,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"ep_exclude_from_search":false,"footnotes":""},"class_list":["post-81","page","type-page","status-publish","hentry"],"aioseo_notices":[],"jetpack_shortlink":"https:\/\/wp.me\/P74T96-1j","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/81","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=81"}],"version-history":[{"count":7,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/81\/revisions"}],"predecessor-version":[{"id":397,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/81\/revisions\/397"}],"up":[{"embeddable":true,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/722"}],"wp:attachment":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=81"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}