個人ユーザーの場合、ss は携帯電話や端末にインストールされますが、企業ユーザーの場合、このような構成はより面倒で、管理や保守が容易ではありません。したがって、ゲートウェイまたはイントラネット内のサーバー上で構成し、ゲートウェイを指す必要があります。 アイデア: 1.dnsmasq+China DNS+ss-tunnelはDNS汚染の問題を解決します 2. ss-redirはiptablesおよびipsetと連携して国内および海外のトラフィックを転送し、国内のウェブサイトは直接接続され、海外のウェブサイトはss-redirを経由するようにします。 ゲートウェイソリューション分析: 1. dnsmasq は主に DNS キャッシュとして機能します。DNS 要求は ChinaDNS に送信され、ChinaDNS は要求を国内の DNS サーバーと ss-tunnel に同時に送信します。ss-tunnel は ss サーバーへの中継を担当します。ss は海外では汚染されないため、ChinaDNS は 2 つの応答を受け取り、結果が汚染されているかどうかを判断します。最後に、dnsmasq は汚染されていない DNS 応答を受け取ります。 2.iptablesはipsetと連携して国内と海外のトラフィックを区別します システム: Ubuntu 20.0 dnsmasq をインストールして設定する1. dnsmasqをインストールする dnsmasq をインストールします 2. 設定ファイル/etc/dnsmasq.confを変更する 解決しない サーバー=127.0.0.1#5354 3. dnsmasqを起動する サービス dnsmasq 開始 ChinaDNS をインストールして設定する1. ChinaDNSの公式ドキュメントを参照する 2. ChinaDNSをダウンロード、リンク wget -c https://github.com/shadowsocks/ChinaDNS/releases/download/1.3.2/chinadns-1.3.2.tar.gz コンパイル tar -xvf chinadns-1.3.2.tar.gz && cd chinadns-1.3.2 ./configure && メイク src/chinadns -m -p 5353 -c chnroute.txt & ###chinadns を起動できるかどうかをテストするためにのみ使用されます netstat -ntlpu ###### 起動されたポートを表示します 3. コンパイル後、実行ファイルchinadnsがsrcディレクトリに生成され、/usr/local/binにコピーされます。 cp ./src/chinadns /usr/local/bin/ 4. /etc/init.d/にchinadnsというファイルを作成し、次のコードをコピーします。実行可能にするには、 #!/bin/sh ### 初期化情報の開始 # 提供: chinadns # 必須開始: $network $local_fs $remote_fs $syslog # 必須停止: $remote_fs # デフォルト開始: 2 3 4 5 # デフォルト停止: 0 1 6 # 簡単な説明: 起動時に ChinaDNS を起動する ### INIT INFO 終了 ### デプロイパスの開始 # このファイルを /etc/init.d/ に置きます ### デプロイ終了 PathDAEMON=/usr/local/bin/chinadns DESC=中国DNS 名前=chinadns PIDFILE=/var/run/$NAME.pidtest -x $DAEMON || exit 0case "$1" in 始める) echo -n "$DESC を開始: " $デーモン\ -c /etc/chinadns/chnroute.txt \ -m \ -p 5354 \ -s 114.114.114.114,127.0.0.1:5300 \ 1> /var/log/$NAME.log \ 2> /var/log/$NAME.err.log & エコー$!> $PIDFILE 「$NAME」をエコーします。 ;; 停止) echo -n "$DESC を停止しています: " `cat $PIDFILE` を強制終了します rm -f $PIDファイル 「$NAME」をエコーします。 ;; 再起動|強制リロード) $0 ストップ 睡眠1 0ドルからスタート ;; *) N=/etc/init.d/$NAME echo "使用法: $N {start|stop|restart|force-reload}" >&2 出口1 ;; esacexit 0 注意: 18 行目の -c /etc/chinadns/chnroute.txt には、必要に応じてパスを入力してください。 5. chinadns を起動/再起動/停止する service chinadns start #chinadns を起動する service chinadns restart #chinadns を再起動します サービス chinadns 停止 #chinadns を停止 shadowsocks-libev をインストールして設定する (ss-redir と ss-tunnel を含む)1. 詳細な手順については、公式ドキュメントを参照してください。 2. 次のコードを実行します apt-get install ソフトウェアプロパティ共通 -y aptリポジトリppa:max-c-lv/shadowsocks-libev -yを追加します apt-getアップデート apt をインストール shadowsocks-libev 3. /etc/shadowsocks-libev/config.json を設定します。111.111.111.111 を自分の VPS サーバー アドレスに置き換え、「パスワード」を自分で変更してください。 { "サーバー":"111.111.111.111", "サーバーポート":8388, "ローカルアドレス":"0.0.0.0", "ローカルポート":1080, "パスワード":"パスワード", "タイムアウト":60, "メソッド":"aes-256-cfb", "モード": "tcp_and_udp" } 4. ss-tunnelとss-redirを起動する /usr/bin/ss-tunnel -c /etc/shadowsocks-libev/config.json -u -l 5300 -L 8.8.8.8:53 & /usr/bin/ss-redir -c /etc/shadowsocks-libev/config.json -b 0.0.0.0 -u & 転送を有効にする 1. /etc/sysctl.conf を変更し、コメントを解除します。 ネット.ipv4.ip_forward=1 2. コマンドを実行して有効にする sysctl -p iptablesとipsetを設定する1. 国内IPアドレスのipsetを生成する curl -sL http://f.ip.cn/rt/chnroutes.txt | egrep -v '^$|^#' > cidr_cn ###実行に失敗した場合は、cat /usr/local/src/chinadns-1.3.2/chnroute.txt | egrep -v '^$|^#' > cidr_cn を使用できます。 ipset -N cidr_cn ハッシュ:ネット for i in `cat cidr_cn`; do echo ipset -A cidr_cn $i >> ipset.sh; 完了 chmod +x ipset.sh && sudo ./ipset.sh rm -f ipset.cidr_cn.rules ipset -S > ipset.cidr_cn.rules cp ./ipset.cidr_cn.rules /etc/ipset.cidr_cn.rules 2. iptablesを設定する iptables -t nat -N shadowsocks# 予約アドレス、プライベートアドレス、ループバックアドレスはプロキシを経由しません iptables -t nat -A shadowsocks -d 0/8 -j RETURN iptables -t nat -A shadowsocks -d 127/8 -j リターン iptables -t nat -A shadowsocks -d 10/8 -j リターン iptables -t nat -A shadowsocks -d 169.254/16 -j 戻る iptables -t nat -A shadowsocks -d 172.16/12 -j リターン iptables -t nat -A shadowsocks -d 192.168/16 -j 戻る iptables -t nat -A shadowsocks -d 224/4 -j リターン iptables -t nat -A shadowsocks -d 240/4 -j RETURN# 次のIPは、プロキシを使用しないLAN内のデバイスのIPです。 iptables -t nat -A shadowsocks -s 192.168.2.10 -j RETURN# shadowsocks サーバーに送信されたデータはプロキシを経由しません。そうしないと、無限ループに陥ります。# 111.111.111.111 を ss サーバーの IP/ドメイン名に置き換えます。iptables -t nat -A shadowsocks -d 111.111.111.111 -j RETURN # 中国本土のアドレスはプロキシを使用しません。意味がなく、多くの労力がかかるからです。iptables -t nat -A shadowsocks -m set --match-set cidr_cn dst -j RETURN# その他のリダイレクトはすべて ss-redir リスニング ポート 1080 にリダイレクトされます (ポート番号は任意です。統一するだけです) iptables -t nat -A shadowsocks ! -p icmp -j REDIRECT --to-ports 1080# OUTPUT チェーンにルールを追加して、shadowsocks チェーンにリダイレクトします。 iptables -t nat -A OUTPUT ! -p icmp -j shadowsocks iptables -t nat -A プリルーティング! -p icmp -j shadowsocks デフォルトゲートウェイを設定する 透過ゲートウェイは、デフォルトのネクストホップ アドレス、つまり、データ パケットのルートを決定した後にゲートウェイがデータ パケットを送信する場所を設定する必要があります。家庭内 LAN 環境では、このネクストホップはルーターのアドレスです。 192.168.2.1 はルーターのアドレスであることに注意してください。192.168.0.1 の場合もあれば、192.168.1.1 の場合もあります。特定の設定を確認する必要があります。 p2p1はネットワークカードです。eth0の場合もあります。ifconfigで自分のネットワークカードコードを確認してください ルート del デフォルト ルート追加デフォルトGW 192.168.2.1 p2p1 ルーターのDNSとDHCPゲートウェイを設定する 1. 透過ゲートウェイのIPアドレスが192.168.2.2であると仮定し、ルーターのDNSを192.168.2.2に設定します。 2. ルーターのDHCPサブ項目で、ルーターのイントラネットゲートウェイを192.168.2.2に設定します。 これで、shadowsocks を使用して LAN 透過ゲートウェイを構築する方法についての記事は終了です。shadowsocks を使用して透過ゲートウェイを構築する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS スタイルのリセットとクリア (異なるブラウザで同じ効果を表示するため)
>>: Vue3+Vite+TS は、要素プラスビジネスコンポーネントの二次カプセル化を実装します sfasga
MySQLの左結合が無効であり、その使用方法今日SQLを書いていたとき、左結合を使用すると左のテーブ...
目次使用されるPygame関数スクリーンの作成ヘビの作成ヘビを動かすゲームオーバーの処理食事を増やす...
目次JSBridgeの起源JSBridgeの双方向通信原理JSはネイティブを呼び出すネイティブコール...
この記事では、Google 入力方法をインストールします。実は以前はSogou入力方式を使っていたの...
その理由は、このタイプの Web ページが WAP と呼ばれるワイヤレス プロトコルから生成されたた...
この記事では、参考までに、計算機を実装するためのWeChatアプレットの具体的なコードを紹介します。...
COALESCE は、各パラメータ式 (expression_1、expression_2、...、...
pingスキャンをオフにする(役に立たないが)まずルートに切り替えるエコー 1 > /proc...
Mybatis ファジークエリ実装方法mybatis のリバース アシスタントは非常に使いやすく、通...
目次1. コンポーネントをうまく活用してコードを整理する1. UIコンポーネントを抽出する2. モジ...
1. 背景プロジェクトの業務が進むにつれて、データベース テーブルの数がどんどん大きくなり、ハードデ...
目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...
<br />幅と高さが適応するオリジナルの 9 グリッド レイアウトをベースに、ネットワ...
ほとんどの場合、MySQL はインストールしたばかりのときは中国語をサポートしません。これはエンコー...
目次1. 何ですか2. 使用数値列挙文字列列挙異種列挙自然3. 応用シナリオ要約する1. 何ですか列...