デジタルIP

デジタルIP

必要に応じて簡単にSSHに接続できるように、定期的にクライアントコンピュータを「自宅に電話する」方法を探しています。私はパブリックIPアドレスを取得し、Twitterのようなどこかに投稿したり、私が運営しているApacheサーバーへのhttpリクエストや変更時に電子メールを送信する簡単なスクリプトを考えています。

この目的のための既存のツール/スクリプトはありますか?検索しましたが、何も見つかりませんでした。

ベストアンサー1

DDクライアント

最も簡単な方法はDDクライアント。私はこれをdynu.comのような無料のネームサーバーと一緒に私のサーバーで使用します。

リンクにはより多くのドキュメントがありますが、ddclientクライアントは動的IPアドレスに対してポーリングされます。変更したら、新しいアドレスをdynu.com(たとえば)に送信します。 dynu.comにカスタムドメイン名を指定できるアカウントがあります。これですぐに接続できます。http://yourname.dynu.com、クライアントのIPにリダイレクトされます。

数値IPアドレスを使用するよりも利点は、SSH構成を継続的に更新する必要がなく、ドメイン名に直接接続できることです。これは私のサーバーでうまく機能します。

デジタルIP

または、それを使用したくなく、どこかにデジタルIPを公開したい場合は、ここで私が使用した古いスクリプトがあります。外部Webページを使用してローカルIPを見つけることは唯一の簡単な方法です。これによりメールが送信されますが、[email protected]必要に応じて変更できます。 cronジョブとして実行できます。

#!/usr/bin/env bash

CURRENTIP=$(curl -s http://myip.dnsomatic.com)
# Alternatively, use http://icanhazip.com

if echo $CURRENTIP | grep -qE '^([0-9]{1,3}\.){3}[0-9]{1,3}$' ; then
  if ! cmp --quiet <(echo $CURRENTIP) /home/pi/.myipaddress ; then
    echo "IP address changed to ${CURRENTIP}"
    echo $CURRENTIP > /home/foo/.myipaddress
    echo -e "Foo's IP address has changed to ${CURRENTIP} .\n" | mail -s 'Change of IP address' [email protected]
  fi
  else
    echo "ERROR: IP address enquiry returns ${CURRENTIP}"
fi

おすすめ記事