2025-02-25
LANにあるはずのNAS、IPアドレスが変わってしまってアクセス不能。192.168.1内のどこかにはあるはず。そこでプログラム!


「ipscan」

192.168.1.? の1から254の指定ポートに一気に探してWebアクセスして応答あったURLを表示するツール「ipsscan」

ポート8888のサービスを探したい時、Denoを入れた環境で、下記コマンドを実行するだけでOK!

deno --allow-net https://code4fukui.github.io/ipscan/ipscan.js 8888

192.168.2.? であれば、下記のように後ろにパラメータとして 2 を足せばOK!

deno --allow-net https://code4fukui.github.io/ipscan/ipscan.js 8888 2

timeout付きfetch、fetchWithTimeout.js と、Promise.allSettled を使って実装。

export const fetchWithTimeout = async (url, options = {}) => { // support timeout msec const timeout = options.timeout; if (!timeout) { return fetch(url, options); } const controller = new AbortController(); options.signal = controller.signal; const timeoutId = setTimeout(() => controller.abort(), timeout); return fetch(url, options) .then(response => { clearTimeout(timeoutId); return response; }) .catch(error => { clearTimeout(timeoutId); throw error; } ); };

日常のちょっとした不満、ひとつ解消!

解消ついでに、Windows環境をメンテナンス。

大きなSSDに載せ替えるため「Macrium Reflect」を使って旧SSDから新SSDへクローン(まるまるコピー)。メインのパーティションを「埋める」機能によって拡大。所要時間は、埋めずにやってしまった初回に30分、やり直して3分と、すぐできました!登録必須の30日間無料トライアルあり。

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS