03/04/30 14:56 e6zMPcz2
常時接続で鯖を立てております。
DDNSに登録してサブドメインを取得しているんですが、
回線が切れているか切れていないかの判断を判断をして切れていたら、
回線接続、DDNSに再登録、DNS設定ファイル書き換え、DNS鯖再起動、ログ出力等を
Cにて行っています。
内容はヘボいプログラムです。
回線がきれているか切れていなかの判断は
わざわざsysytem関数でifconfigの出力結果を拾ってppp0が127.0.0.1かどうかで判断してます。
ちょっとへぼすぎですよね。
で、gethostbynameを使用して回線がつながっているかどうかの判断をしようかと思ったのですが・・・
回線が切れているにもかかわらずgethostbynameではグローバルIPアドレスを返してきます。
これはDNSの問い合わせで取得してきたアドレスなのでしょう。
みなさんは回線の状態をどうやって取得してますか?