オペレーターに電話してブリッジ モードに変更する必要があると、ルーターがダイヤルアップしてパブリック ネットワーク IP を割り当て、ドメイン名を 9/年で購入し、その IP を DNS にバインドします。 IPは常に変わりますか?Python スクリプトを使用して DNS インターフェイスを呼び出し、IP が変更されたことを検出し、DNS A レコードを自動的に変更する方法は間違いなくあります。次のステップは、プライベート サービスを自分で構築し、リモート ブートに Wake On LAN を使用して、ポート マッピングを構成することです。私は 2015 年に大学で購入したラップトップを使用しています。4c4g で間違いなく十分です。
1. ルーターのダイヤルアップ
2. ドメイン名は aliyun または他のプラットフォームで購入できますが、私はそれに 9 年を費やしましたが、「少し高い、少し高い」です。
3.PythonDNSコントロール
Python コードはデバッグされているので、コピーするだけです。
#!/bin/bash
IP_s=`curl -s cip.cc |grep IP |awk -F[:] '{
print $2}' |awk '{
print $1}'`
old_ip=`cat IP.txt`
if [ ! -z "$IP_s" -a ! -z "$old_ip" -a "$IP_s" != "$old_ip" ]
then
/usr/bin/python3 dingding.py $IP_s #发送通知
/usr/bin/python3 dns.py $IP_s #dns修改A记录
curl -s cip.cc |grep IP |awk -F[:] '{
print $2}' |awk '{
print $1}' > IP.txt
fi
4. プライベート サービスの構築 以下に示すように、ここでいくつかのサービスを構築しました。
このマシンは私の自宅にもあり、すべてのサービスがパブリック ネットワークにマッピングされています。これについては、サービスの展開前にブログにも書きましたので、ここでは詳しく説明しません。
5. リモートブートの実装方法
(内部ネットワークは問題なくデバッグできました) 最初はポートマッピングを行ってから、Wake On LAN クライアントを使用してサーバーアドレスを設定し、ネットワークパケットを送信してウェイクアップしましたが、一日中デバッグを続けた後、 , それでもデバッグができなかったので、最後のパケットが何なのかを確認するためにパケットをキャプチャして受信しましたが、結局はルーティングに問題がありました。長い間ルーティングを調整してもうまくいかなかったので、最終的にはこの方法を諦め、Python を使ってサービスを書き、外部から直接呼び出して起動することにしました。または、このように DingTalk ロボットを直接使用することもできます。