web-dev-qa-db-ja.com

起動するたびにIPをリモートサーバーに送信する

コンピュータが起動するたびに自動的にIPを送信したい。 /etc/rc.localを編集します

sleep 10
ifconfig > /tmp/myip
scp /tmp/myip <server>
exit 0

試しましたが、inet addr, Bcast, Mask/tmp/myipがありません。スクリプトの後でネットワークが始まると思います。それで、それをどのように行うのですか?どうもありがとうございました!

3
Justme0

ifconfigは出力を表示しません。おそらく、実行時までにネットワーク設定が完全​​に完了していないためです。さらに、動的IPアドレスがサーバーの稼働時間中に変更されないという100%の保証はありません。

dhclientを使用している場合は、スクリプトをディレクトリ/etc/dhcp/dhclient-exit-hooks.dに移動して、実行されるようにしますafter DHCP経由でIPアドレスを取得します。通常、Debianはこのディレクトリにデータを入力します。存在しない場合は、作成する必要がある場合があります。

スクリプトは、起動時および変更のたびにIPアドレスを送信するように変更できます。 IPアドレスのDHCPリース期間に応じて、可能性があるまたは可能性がない毎回コピーすることに関心があることに注意してください。

ISP /インターネット環境の場合、ダイナミックDNSサービスを使用することも(もっと)興味深いかもしれません。

詳細については、こちらをご覧ください ISPからのIPアドレスの変更に対応するためのより良い方法は?

そして

http://manpages.ubuntu.com/manpages/wily/man8/dhclient-script.8.html

2
Rui F Ribeiro

解決策は、使用しているDHCPクライアントデーモンによって異なります。ほとんどのディストリビューション(* bsdおよびlinux)は、dhcpcdまたはdhclientを使用します。どちらの場合も、クライアント構成にスクリプトを挿入できます。

  • dhcpcd/etc/dhcpcd.shスクリプトを実行します(存在する場合)。制御されたインターフェイスがアップまたはダウンするたびに実行されます。このスクリプトにscpを挿入するだけです。

    Hooking into DHCP events
      dhcpcd will run /etc/dhcpcd.sh, or the script specified by the -c,
      --script option. It will set $1 to a Shell compatible file that holds
      various configuration settings obtained from the DHCP server and $2 to
      either up, down or new depending on the state of dhcpcd.  dhcpcd ignores
      the exist code of the script.
    
  • dhclientは、インターフェイスを設定した直後にETCDIR/dhclient-exit-hooksスクリプトを呼び出します。 dhclient-scriptのマニュアルページのHookセクションの指示に従うことができます。

    After all processing has completed, CLIENTBINDIR/dhclient-script checks
    for  the  presence  of an executable ETCDIR/dhclient-exit-hooks script,
    which if present is invoked using the ´.´ command.  The exit status  of
    dhclient-script  will be passed to dhclient-exit-hooks in the exit_sta-
    tus Shell variable, and will always be zero if the script succeeded  at
    the  task  for  which  it was invoked.   The rest of the environment as
    described previously for dhclient-enter-hooks is  also  present.    The
    ETCDIR/dhclient-exit-hooks  script  can modify the valid of exit_status
    to change the exit status of dhclient-script.
    
2
andcoz