web-dev-qa-db-ja.com

namecheapサブドメインを更新するddclient?

Ddclientで更新したいサブドメインがあります。 dyndnsからIPを取得するようにddclientを構成しましたが、namecheapのサブドメインが更新されていません。彼らは私の実際のドメインの代わりにログインとしてyourdomain.comを使用すると言いました。

誰かがddclientでnamecheapDNSを更新することができましたか?

Ddclient3.7.3でCentOS6.2を実行しています。

Ddclientを実行すると、次のようになります。

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.

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
4
LF4

私はcentos6.2でddclientバージョン3.7.3を使用していました。バージョンが重要かどうかはわかりませんが、namecheapdyndnsを設定する方法はこの方法でした。 google.com、8cc67226fadff52f402d31505ee85d6b、devをセットアップに置き換えるだけで、他の人がどのようにすべきかを正確に理解できるように作成しました。

パスワードの前後に引用符を追加したり、各行の後にコンマ/バックスラッシュを追加したりしないでください。

##
## NameCheap (namecheap.com)
##
protocol=namecheap
server=dynamicdns.park-your-domain.com
login=google.com
password=8cc67226fadff52f402d31505ee85d6b
dev
0
LF4

私はddclientでも同じ問題を抱えていました。そこで、更新を処理するための簡単なPerlモジュールを作成しました。私は、誰もがそうであるように、外部IPを取得して、基本的なパラメーターを使用してNamecheapにフィードする必要があると考えて開発しました。 Namecheap側の更新スクリプトが独自にIPを決定するため、これは必要ありません。

したがって、更新の呼び出しは簡単です。

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
}

サブドメインは、ワイルドカードエントリを使用して処理できることに注意してください。 Namecheapの「allHostrecords」ページで「*」をサブドメインAレコードとして定義するだけです。

App :: DDNS :: Namecheap 興味があれば、CPANにあります。

0
terminalfool