n-Archives.net

nWOL version 1.6.40 をリリースしました

目次

nWOL version 1.6.40 の追加機能の主なポイント

  • DNS対応。IPアドレスをホスト名による名前解決でできるようにした。Dynamic DNSにも対応。
  • nWOLcも nWOLに合わせて、DNS名前解決対応。ただし、nWOLcはDNS名前解決を同期的に実行するので、NetBIOS の名前解決が失敗する場合、タイムアウトの待ち時間がかかる可能性がある。
  • サウンド機能を追加。
  • メイン画面下部のステータス表示を改善。文字列のスクロール表示、表示メッセージのキュー管理を追加。
  • 監視対象ホスト指定。これは、前バージョンの、タスクトレイで「指定されたホストの状態を表示」した際に正規表現で指定したホスト選択、が引き継がれています。監視対象ホストは、タスクトレイでの状態表示、または、サウンドを鳴らすホスト指定、で使用されます。
  • 「Scan機能」「IPアドレス・ホスト名自動修正機能」の処理を改善・効率化。
  • タスクトレイアイコンをクリックした時のメイン画面の表示動作を修正。ウィンドウが表示されていたが最前面ではなかった場合、最前面に
    移動するようにした。
  • ホスト情報設定で、ネットマスクが指定されていないホストを追加する場合の処理を追加。LAN内のホストはネットマスクが自動設定されます。
  • ホスト名が自動で修正された場合、監視対象ホスト数が変化する場合があるため、これに対応した。
  • ネットマスクが /32 の時のブロードキャストアドレス作成ロジックに誤りがあったため修正。/32を指定すると、IPアドレス欄に指定した
    IPアドレスがそのまま送信先アドレスとなります。この動作はネットマスク欄を指定なしに設定しても同じ動作になります。

 

■ DNS対応

IPアドレス欄にホスト名、FQDN、を記入できるようにしました。これにより、Dynamic DNSで登録されているアドレスの登録や、Active Directory と DNSを連携させた Active Directory 統合ゾーンモードで運用されている環境などで役に立つのではないかと思います。

ただ、私の開発環境では、Dynamic DNS、Active Directory環境がないため、そのような環境で快適に利用できるようになっているか、やや心配です。通常の名前解決が正しく行われる動作は確認しているのですが、何かお気づきの点がございましたら、コメントお送りいただけると助かります。よろしくお願いいたします。

 

■ サウンド対応

指定したホストが起動または停止した場合にサウンドを鳴らします。サウンドを鳴らす条件は、WOL起動した場合、監視対象ホストが起動した場合、などから選択できます。

 

開発後記

DNS対応については、当初、比較的簡単に実装できるかと思っていたのですが、やってみるとかなり大がかりな改修になりました。理由は、非同期処理の実装方法の検討にかなり試行錯誤したことです。DNS名前解決の場合、特に NetBIOS の名前解決が失敗する場合、タイムアウトまで2~3秒かかるので、処理がブロックされてしまいます。それを避けるため、パケット送信処理と名前解決処理を分離して、時間のかかる可能性のある名前解決を非同期処理にしています。ただし、nWOLc.exe については、そのあたりも同期処理になっていますので、名前解決ができないホストの場合、少しタイムアウト待ちのタイムラグが発生しますのでご注意ください。

また、/32については、思わぬ >> (Bitwise and shift operator) の仕様の落とし穴に気づいてませんでした。左辺の変数のビット数以上のシフトは想定の動作にならないということです。例えば、(uint)0xFFFFFFFF >> 32 は 0 ではなく 0xFFFFFFFF となります。詳細は Microsoftのページ をご覧ください。

 

 

参考:nWOL改版履歴

 

 

【関連記事・関連コンテンツ】

 

この記事へのコメント

yaguchi   2021-01-02 11:51:04
DDNS対等
改良版のリリース
ありがとうございます。
使ってみます。

コメントをお送りください
お名前:
コメント:
コメントの公開: