Clash の mixed-port とは:LAN 共有を有効にしてスマホ・テレビを同じプロキシに通す
mixed-port と allow-lan という2つの重要な設定項目の役割を解説し、Clash Verge Rev で LAN 共有を有効にする手順、スマホ・テレビ側でのプロキシアドレス設定方法、ファイアウォール許可の注意点までをまとめて紹介します。
混合ポート(mixed-port)とは何か
Clash の設定ファイルには元々2つの独立した項目がありました。port が HTTP プロキシ用のポート、socks-port が SOCKS5 プロキシ用のポートです。この分け方は初期のプロキシツールの慣習を引き継いだものですが、使う側にとっては少々厄介です。あるデバイスが HTTP プロキシしか対応していない場合は片方のポートを、別の SOCKS5 専用ソフトに切り替えるときはもう片方のポートを、と使い分ける必要がありました。日常的に混同しやすく、片方のポートしか開いていないために特定のアプリだけプロキシに接続できない、というトラブルも起きやすかったのです。
mixed-port は Clash カーネル(Clash Premium や mihomo/Meta カーネルを含む)が用意した統合方式で、同一ポート上で HTTP と SOCKS5 の両プロトコルを同時にリスンします。カーネルがクライアントから届いたリクエストの種類を自動判別して処理してくれるため、接続先のソフトが HTTP プロキシを要求していても SOCKS プロキシを要求していても、同じポート番号を入力するだけで済み、2種類のポートを気にする必要がなくなります。
mixed-port: 7890
allow-lan: true
bind-address: "*"
現在主流のクライアント(Clash Verge Rev、Clash Nyanpasu、FlClash など)はいずれもデフォルトで mixed-port を使用しており、GUI 上の「混合ポート」や「プロキシポート」という項目がこのフィールドに対応します。デフォルト値は通常 7890 です。スマホ、テレビ、ルーターなどの外部デバイスから本機のプロキシに接続する際も、プロトコルの種類を区別せずこの1つのポートを入力するだけで済みます。
allow-lan:LAN 内デバイスの接続許可を決める設定
デフォルトでは、Clash のプロキシポートは 127.0.0.1(ローカルループバックアドレス)のみをリスンします。つまり Clash を実行しているパソコン自身しかプロキシを使えず、同じ Wi-Fi にいるスマホ、タブレット、スマートテレビなどの他デバイスは、ポート番号を知っていても接続できません。外部ネットワークカードにポートが公開されていないためです。
allow-lan はこの扉を制御するスイッチです。true に設定すると、Clash はリスンアドレスをすべてのネットワークカードに拡張します(bind-address: "*" と組み合わせます)。これにより LAN 内の他デバイスは、ブラウザやシステムのプロキシ設定に Clash 実行中のパソコンの LAN IP とポート番号を入力するだけで、自分の通信をそのパソコンの Clash インスタンスに転送し、間接的に同じプロキシルールとノードを利用できるようになります。
allow-lan を有効にすると、プロキシサービスが LAN 全体に公開された状態になり、同一ネットワークに接続しているデバイスは理論上このポートへの接続を試みることができます。信頼できないネットワーク環境(公共 Wi-Fi、シェアハウスの共用ルーターなど)にいる場合は、アクセス制御を併用するか、必要なときだけ一時的に有効化して使用後は無効に戻すことをおすすめします。
Clash Verge Rev で LAN 共有を有効にする手順
クライアントによって表記は多少異なりますが、Clash Verge Rev を例にすると操作手順は次のとおりです。
- Clash Verge Rev を開き、左側ナビゲーションの「設定」ページに移動します。
- 「Clash 設定」または「システム設定」セクションにある「LAN 接続を許可」(
allow-lanに対応)のスイッチをオンにします。 - 「混合ポート」の値を確認します。デフォルトは通常 7890 です。このパソコンで別のソフトが同じポートを使用している場合は、ここで別のポート番号に変更し、変更後の値を控えておきます。
- このパソコンの現在の LAN IP アドレスを確認します。Windows ではコマンドプロンプトで
ipconfigを実行し「IPv4 アドレス」を確認、macOS では「システム設定 → ネットワーク」で現在接続中の IP を確認します。 - 設定を保存したら、クライアントが起動していること、必要に応じてシステムプロキシまたは TUN モードがオンになっていることを確認し、次のスマホ・テレビ側の設定に進みます。
他のクライアントでも対応する設定項目の名称は似ています。例えば Clash Nyanpasu にも同様に「LAN を許可」という表記があり、FlClash にも独立した LAN 共有スイッチがあります。原理は上記と同じで、いずれも同じ allow-lan フィールドを変更しています。
スマホ・スマートテレビ側でのプロキシアドレス設定方法
LAN 共有を有効にしたあと、他デバイスからプロキシに接続する方法は OS によって異なりますが、基本は「パソコンの LAN IP + 混合ポート」を入力する点で共通しています。
Android スマホ
「設定 → ネットワークとインターネット → 接続中の Wi-Fi → ネットワークを変更」に進み、詳細設定を展開して「プロキシ」を「手動」に変更します。「プロキシホスト名」にパソコンの LAN IP、「プロキシポート」に混合ポート番号を入力して保存します。端末によってメニューの階層は多少異なりますが、項目名はほぼ同じです。
iPhone / iPad
「設定 → Wi-Fi」に進み、接続中の Wi-Fi 名の右側にある詳細アイコンをタップします。下にスクロールして「プロキシを構成」を「手動」に切り替え、サーバーアドレスとポートを入力して保存します。
スマートテレビ / テレビボックス
多くのテレビ用 OS(Android TV や一部メーカー独自 OS)には、Wi-Fi 詳細設定や有線ネットワーク設定の中に同様の「プロキシ設定」項目があります。操作方法はスマホとほぼ同じで、手動プロキシを選択し、LAN IP とポートを入力します。一部のテレビ OS は手動でのプロキシ入力に対応していないため、その場合はルーター側の透過プロキシやバイパスルーター方式が必要になりますが、これは本記事の範囲外です。
入力が終わったら、スマホのブラウザで接続元の地域が判別できるページを開くか、普段は地域制限でアクセスできないサイトを開いて確認してみましょう。正常に表示できれば、プロキシ転送が有効になっている証拠です。
ファイアウォールの許可設定と接続できない主な原因
allow-lan を有効にし、IP とポートを正しく入力しても、スマホやテレビから接続できない場合、多くはシステムのファイアウォールが受信接続をブロックしていることが原因であり、設定項目自体の入力ミスではないケースがほとんどです。
- Windows ファイアウォール:LAN 共有を初めて有効にすると、通常「アプリのファイアウォール経由の通信を許可する」というポップアップが表示されます。必ず「プライベートネットワーク」と「パブリックネットワーク」の両方(ネットワークの種類が不明な場合は、現在接続している方だけでも)にチェックを入れてください。ポップアップを見逃した場合は、「コントロールパネル → システムとセキュリティ → Windows Defender ファイアウォール → アプリまたは機能をファイアウォール経由で許可する」から Clash クライアントを探して手動でチェックを入れます。
- macOS ファイアウォール:「システム設定 → ネットワーク → ファイアウォール」で、アプリの受信接続がブロックされていないか確認し、Clash クライアントを許可リストに追加します。
- IP アドレスの入力ミスまたは変化:LAN IP はルーターによって動的に割り当てられるため、パソコンやルーターを再起動すると変わる場合があります。接続失敗時はまず現在の IP を再確認してください。
- ポートが使用中、または変更後に同期していない:混合ポート番号を変更した場合は、スマホ・テレビ側の設定も新しいポート番号に合わせて更新する必要があります。両側の値が一致していないと接続できません。
- デバイスが同一ネットワークにいない:スマホ・テレビと Clash を実行しているパソコンが同じルーター、同じネットワークセグメントの Wi-Fi に接続されているか確認してください。ゲスト用ネットワークとメインネットワークが分離されている場合など、セグメントが異なると原則として通信できません。
トラブルシューティングは上記の順序で一つずつ確認するのがおすすめです。まずファイアウォールの許可を確認し、その後 IP とポートが両側で一致しているかを見ていくと、原因の箇所を特定しやすくなります。
LAN 共有と TUN モードの関係
補足しておきたいのは、allow-lan が対象とするのは HTTP/SOCKS 混合プロキシポートの LAN への公開であり、TUN モード(端末全体の通信を仮想ネットワークカードで引き受ける方式)とは別の仕組みだという点です。TUN モードは Clash を実行している本機にのみ作用し、LAN 内の他デバイスの通信を自動的にプロキシへ流すわけではありません。スマホやテレビにも同じ出口を共有させたい場合は、本記事で紹介した mixed-port + allow-lan による手動プロキシ設定、あるいはルーター側でより完成度の高い透過プロキシ環境を構築する必要があります。両者は同時に有効化してもお互いに干渉しませんが、作用範囲が重ならないため、設定時に混同しないよう注意してください。