ddclient para atualizar o subdomínio namecheap?

4

Eu tenho um subdomínio que desejo atualizar com o ddclient. Eu configurei o ddclient para obter o IP do dyndns, mas ele não está atualizando o subdomínio no namecheap. Eles disseram para usar yourdomain.com como o login em vez do meu domínio real.

Alguém conseguiu obter DNS namecheap atualizado com o ddclient?

Estou executando o CentOS 6.2 com o ddclient 3.7.3.

Quando eu executo ddclient eu recebo o seguinte.

CONNECT:  checkip.dyndns.org
CONNECTED:  using HTTP
SENDING:  GET / HTTP/1.0
SENDING:   Host: checkip.dyndns.org
SENDING:   User-Agent: ddclient/3.7.3
SENDING:   Connection: close
SENDING:
RECEIVE:  HTTP/1.1 200 OK
RECEIVE:  Content-Type: text/html
RECEIVE:  Server: DynDNS-CheckIP/1.0
RECEIVE:  Connection: close
RECEIVE:  Cache-Control: no-cache
RECEIVE:  Pragma: no-cache
RECEIVE:  Content-Length: 106
RECEIVE:
RECEIVE:  <html><head><title>Current IP Check</title></head><body>Current IP Address: IPADD</body></html>
Use of uninitialized value in string ne at /usr/sbin/ddclient line 1998.
WARNING:  skipping update of lf4bot from <nothing> to IPADD
WARNING:   last updated <never> but last attempt on Fri Jun 15 22:46:21 2012 failed.
WARNING:   Wait at least 5 minutes between update attempts.

Arquivo ddclient.conf

daemon=300                              # check every 300 seconds
syslog=yes                              # log update msgs to syslog
mail=root                               # mail all msgs to root
mail-failure=root                       # mail failed update msgs to root
pid=/var/run/ddclient.pid               # record PID in file.
ssl=yes                                 # use ssl-support.  Works with
use=web, web=checkip.dyndns.org/, web-skip='IP Address' # found after IP Address
protocol=namecheap \
server=dynamicdns.park-your-domain.com \
login=yourdomain.com \
password=PASSWORD \
lf4bot
    
por LF4 16.06.2012 / 07:00

3 respostas

6

Acabei de passar por esse processo e quero observar alguns problemas que me afetaram.

Primeiro, esta é a referência canônica para configurar ddns para namecheap: link

Se você não quer confiar em um serviço web externo para encontrar seu IP (como eu), as coisas são um pouco mais complicadas. O ddclient tem um recurso para fazer login no seu roteador e pegar seu endereço IP de lá, que deve ser o método mais eficiente e confiável.

A primeira coisa que você precisa é encontrar a página que contém seu endereço IP. Para mim, isso foi http://192.168.1.1/RST_status.htm . Certifique-se de que quando você "visualizar a fonte" nessa página, você verá o seu endereço IP. Agora logout do seu roteador, caso contrário o ddclient só verá uma mensagem de erro sobre como alguém já está logado. Finalmente edite seu /etc/ddclient.conf da seguinte forma:

protocol=namecheap
use=fw
fw=192.168.1.1/RST_status.htm
fw-login=admin
fw-password=<my-router-password>
server=dynamicdns.park-your-domain.com
login=<my-domain>.org
password='<8cc67226fadff52f402d31505ee85d6b>'
www

Para ter certeza de que funciona, execute: ddclient --debug --verbose . Você deve ver a página da Web que é transferida do roteador e o IP que ela extrai dela.

Você provavelmente não deseja usar a opção --noexec para depuração, já que o ddclient irá pular o download do html do roteador e não encontrará nenhum endereço IP. Nesse caso, você verá DEBUG: skipped network connection e WARNING: unable to determine IP address , o que não é bom.

    
por 17.09.2012 / 18:27
0

Eu estava usando o ddclient versão 3.7.3 no centos 6.2 Não sei se as versões importam, mas o jeito que acabei configurando o meu namecheap dyndns foi dessa maneira. Eu fiz isso para que os outros pudessem ver exatamente como eles deveriam substituí-lo apenas pelo google.com, 8cc67226fadff52f402d31505ee85d6b e dev com sua configuração.

Não adicione aspas ao redor da senha ou adicione vírgulas / barras invertidas após cada linha.

##
## NameCheap (namecheap.com)
##
protocol=namecheap
server=dynamicdns.park-your-domain.com
login=google.com
password=8cc67226fadff52f402d31505ee85d6b
dev
    
por 16.06.2012 / 07:58
0

Eu tive a mesma dificuldade com o ddclient. Então eu escrevi um módulo perl simples para cuidar das atualizações. Eu desenvolvi pensando, como todo mundo faz, que você tem que pegar o seu ip externo e alimentá-lo com o Namecheap com seus parâmetros básicos. Isso não é necessário, já que o script de atualização no final do Namecheap determina seu IP por conta própria.

Portanto, uma chamada de atualização é simples:

use App::DDNS::Namecheap;

my $domain =  App::DDNS::Namecheap->new(
                  domain   => 'mysite.org',
                  password => 'abcdefghijklmnopqrstuvwxyz012345',
                  hosts    => [ "@", "www", "*" ],
);

while (1) {
    $domain->update();
    sleep (300); #5 minute cycle
}

Observe que os subdomínios podem ser manipulados com o uso de uma entrada curinga. Basta definir "*" como um subdomínio Um registro em sua página "todos os registros de host" do Namecheap.

App :: DDNS :: Namecheap está no CPAN se você estiver interessado.

    
por 27.05.2014 / 20:34