多くの人がキャンパスネットワークをどうやって突破するかを尋ねてきます。新学期が始まるにあたり、多くの人がこの問題を考え始めています。ここで言う「突破」とは実際にはネットワークの共有を指します。
多くの学校では、スマートフォンまたはコンピュータとスマートフォンのみの制限があります。これは不合理です。まず、寮でスマートホームを使うことを考えれば、もう一台の Pad を使うだけでもインターネットに接続するのが難しいです。
なぜ OpenWrt が万能薬ではないのかというと、まず OpenWrt の国内版は非常に多いからです。
次に、技術的な競争が非常に激しく、今日私がやったことを明日にはその方法が封じられることもあります。また、ソフトウェアの設定は多くの初心者ユーザーにとって理解しにくいものです。
このいわゆる「突破」を実現するためには、コストや沈黙のコストの観点からも見積もることができません。今年使えるものが来年には学校が機器を変更するかもしれませんし、サービスプロバイダーが変わればどうしようもありません。ですので、試行錯誤する際にはこの点を意識するべきです。また、自動化された検証を実現したい場合は、まず自分の所属する学校で以前に誰かが試みたことがあるかを検索してみてください。あれば、直接再利用してテストすることができます。ダメなら、友人に頼んで ChatGPT にスクリプトを書いてもらうこともできます。
もし CatWrt を使ってキャンパスネットワークの疑問がある場合は、私たちのグループに参加してください。私のチュートリアルと経験が多くの学生に役立つことを願っています。
接続方法#
ここでは接続方法について説明します。
- PPPoE、つまりダイヤルアップ接続
- DHCP、つまり自動取得アドレス、これは比較的一般的です
- VPN
- プライベートダイヤルプロトコル、PPPoE を基にした改造は非常に少なく、解決方法もほとんどありません
PPPoE ダイヤルの学校は非常に少なく、学校も良いです。
検証方法#
各学校によって異なり、サービスプロバイダーも異なります。
- モバイルアプリ(ブラウザで開けないもの)
- WEB 検証(ブラウザで開けて、ログイン可能)
- コンピュータソフトウェア
ここでの検証は、OpenWrt 上で MAC アドレスをコピーし、Python3 で検証スクリプトを実行することで行えます。スクリプトを作成したい方は、私が以前公開したブログを参考にしてください。
モバイルアプリの検証の場合は、小黄鳥を使ってパケットをキャプチャし、その内容を ChatGPT に渡してスクリプトを書いてもらうことができます。簡単なものであれば、sh スクリプトや bash スクリプトを使って解決できます。
検出方法#
一般的なネットワーク共有の検出方法として、特に一般的なのは最初の 3 つです。これらは OpenWrt 上で非常に便利に解決できます。
- TTL フィールド(Windows かルーターの Linux システムかを確認できます)
- HTTP ブラウザの User-Agent(HTTPS は TLS で暗号化されているため影響を受けません)
- 時計のオフセット
- Flash Cookie 検出
- IPv4 パケットヘッダー
- DPI 深度パケット検出
引用:ある大学のキャンパスネットワーク共有検出メカニズムの研究と解決策
IP アドレスや MAC アドレスなどの基本的な検出方法もあり、検出方法は学校によって異なります。
準備#
コンポーネントをインストールする前に、必ずインデックスファイルを更新してください opkg update
これにより、すべての opkg install が問題なく行えます!
ここで私は自信を持って私の CatWrt ファームウェアをお勧めします。このブログのすべての内容を網羅しています。
私の過去のブログには、ソフトウェアソースの使用方法に関する多くの情報があります。
含まれているもの:
- Cattools のソフトウェアソース設定
ソフトウェアソースの設定- ソフトウェアソースの一般的な問題とソフトウェアリスト
- Windows で CatWrt ソフトウェアソースを展開する
- など... 具体的には私のブログを探ってみてください。
以下は CatWrt ファームウェアをダウンロードできるリンクの集合です👇
もちろん、CatWrt は完璧な解決策ではありません。例えば、ソフトウェアのインストールにはインターネット接続が必要です。ルーターが検証を終えた場合、一時的にソフトウェアソースにアクセスでき、正常にインストールできます。
オフラインの場合は、私たちのツール(Cattools)と IPK ファイルを手動でダウンロードしてインストールするためにあらゆる手段を講じる必要があります。環境を整えた後に再度接続してください!
クローン#
ネットワークが必要な場合、例えば锐捷の検証が必要な場合、OpenWrt に IP アドレス / MAC ハードウェアアドレスをクローンする必要があります。これにより、MAC スキャン時にルーターのメーカーが原因で封じられることや、非常用デバイスによる問題を回避できます。
-
Windows: 設定 - ネットワーク - イーサネット / Wi-Fi
-
OpenWrt (CatWrt): ネットワーク - インターフェース - wan(変更) - 一般設定 - 高度な設定 - MAC アドレスをリセット
Tip: 正規のメーカーから出荷されたデバイスには、唯一無二の MAC アドレスがあります。無線 MAC スキャンのアプリを持つモバイルアプリを開いて、近くのルーターのブランドを確認できます。
NTP#
CatWrt はデフォルトで NTP を有効にしています。他のファームウェアでは、時間オフセット検出を回避するために有効にする必要があるかもしれません。
システム - システム - 時間同期
-
NTP クライアントを有効にする
-
NTP サーバーとしてサービスを提供
-
候補 NTP サーバー
ntp1.aliyun.com
ntp.tencent.com
ntp.ntsc.ac.cn
time.ustc.edu.cn
UA2F#
OpenWrt で HTTP の非暗号化トラフィック UA を処理し、検出を回避できます。
opkg install ua2f luci-app-ua2f
Tip: ここでの UA2F luci は新しく登場したものです。
- UA2F
- UA テストサイト 1 http://ua-check.stagoh.com
- UA テストサイト 2http://ua.233996.xyz
TTL ホップ#
以下のコンポーネントをインストールする必要があります。
opkg install iptables-mod-ipopt kmod-ipt-ipopt
システム - ファイアウォール - カスタムにこれを挿入し、ファイアウォールを再起動することで TTL を変更できます。
⚠️ 一部のシステムにはカスタムファイアウォールが含まれていない場合があります。関連する解決方法は自分で検索してください。このブログは Lean 系の OpenWrt 操作(LEDE/CatWrt/QWRT)に基づいています。
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64
ここでの 64 は Windows で一般的に使用されるもので、128 は Linux と MAC で一般的に使用されるホップです。
UA3F#
この方法は SOCK5 プロキシソフトウェアに依存しています。例えば😺Clash など、マシンの性能に要求があります。単に SOCK5 を使用するだけであれば要求は比較的低いですが、UA2F を実施した場合はこれを使用する必要はありません。
opkg install curl libcurl luci-compat
export url='https://blog.sunbk201.site/cdn' && sh -c "$(curl -kfsSl $url/install.sh)"
service ua3f reload
推奨読書:https://blog.sunbk201.site/posts/ua3f
mentohust#
锐捷キャンパスネットワーク接続ツール
opkg install mentohust
ここで言及すべきことは、各学校にはおそらく少しの锐捷ツールがあり、必ずしも mentohust を使用する必要はないということです。
人脈資源#
学校 + OpenWrt で関連するチュートリアルを検索するか、すでに OpenWrt を設定した先輩を見つけてみてください。これは非常に効果的です。
このブログはすべての情報を網羅することはできません。学校が多すぎて、解決方法も異なります!
私たちの文中で言及したツールがあれば、私たちのファームウェアを使用して、検証を展開したり、検出を回避してネットワークを共有することができます。
この記事は Mix Space によって xLog に同期更新されました。原始リンクは https://www.miaoer.net/posts/network/college_network_sharing