jpskill.com
📦 その他 コミュニティ

proxychains

ネットワーク接続の問題を自動検出し、Proxychains4を使ってプロキシ経由での接続を強制することで、タイムアウトやDNSエラー、ネットワーク遮断といった状況でも安定した通信を可能にするSkill。

📜 元の英語説明(参考)

Auto-detect network issues and force proxy usage with proxychains4. Use this skill when encountering connection timeouts, DNS failures, or blocked network access. Default proxy is http://127.0.0.1:9910

🇯🇵 日本人クリエイター向け解説

一言でいうと

ネットワーク接続の問題を自動検出し、Proxychains4を使ってプロキシ経由での接続を強制することで、タイムアウトやDNSエラー、ネットワーク遮断といった状況でも安定した通信を可能にするSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o proxychains.zip https://jpskill.com/download/16684.zip && unzip -o proxychains.zip && rm proxychains.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/16684.zip -OutFile "$d\proxychains.zip"; Expand-Archive "$d\proxychains.zip" -DestinationPath $d -Force; ri "$d\proxychains.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して proxychains.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → proxychains フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
7

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Proxychains Network Proxy Skill

自動でプロキシを使用してネットワーク問題を解決 - ネットワーク接続の失敗、タイムアウト、またはアクセス制限が発生した場合に、自動的に proxychains4 を使用してプロキシ経由で強制的に接続します。

When to Use This Skill

トリガー条件(自動適用):

  • ❌ Connection timeout errors
  • ❌ DNS resolution failures
  • ❌ "Connection refused" errors
  • ❌ HTTP 403/451 blocked access
  • ❌ GitHub/PyPI/npm などの海外リソースへのアクセス失敗
  • ❌ curl/wget/git/pip などのコマンド失敗

Claude は以下を行うべきです:

  1. ネットワークエラーを検出した後、自動的にコマンドの前に proxychains4 を追加します。
  2. デフォルトのプロキシ設定 http://127.0.0.1:9910 を使用します。
  3. プロキシが失敗した場合、ユーザーにプロキシサービスの状態を確認するように促します。

Quick Reference

基本的な使用パターン

# ❌ 元のコマンドが失敗
curl https://github.com/user/repo

# ✅ プロキシを使用して再試行
proxychains4 curl https://github.com/user/repo

共通のシナリオでの自動適用

シナリオ 1: Git 操作の失敗

# 元のコマンド
git clone https://github.com/user/repo.git

# 自動的に変更
proxychains4 git clone https://github.com/user/repo.git

シナリオ 2: Python pip インストールの失敗

# 元のコマンド
pip install requests

# 自動的に変更
proxychains4 pip install requests

シナリオ 3: npm/yarn インストールの失敗

# 元のコマンド
npm install package-name

# 自動的に変更
proxychains4 npm install package-name

シナリオ 4: wget/curl ダウンロードの失敗

# 元のコマンド
wget https://example.com/file.tar.gz

# 自動的に変更
proxychains4 wget https://example.com/file.tar.gz

シナリオ 5: Docker イメージのプル失敗

# 元のコマンド
docker pull image:tag

# 自動的に変更
proxychains4 docker pull image:tag

シナリオ 6: SSH 接続の失敗

# 元のコマンド
ssh user@remote-host

# 自動的に変更
proxychains4 ssh user@remote-host

設定詳細

デフォルトのプロキシ設定

ローカルプロキシアドレス: http://127.0.0.1:9910

設定ファイルの場所:

  • ~/.proxychains/proxychains.conf (推奨)
  • /etc/proxychains.conf (システムレベル)

簡易設定スクリプト

ユーザーレベルの設定を作成します(自動的に 127.0.0.1:9910 を使用します):

mkdir -p ~/.proxychains
cat > ~/.proxychains/proxychains.conf << 'EOF'
# Proxychains configuration
strict_chain
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000

[ProxyList]
http 127.0.0.1 9910
EOF

環境変数方式(一時的な使用)

# プロキシ環境変数を設定
export PROXYCHAINS_SOCKS5_HOST=127.0.0.1
export PROXYCHAINS_SOCKS5_PORT=9910

# 使用
proxychains4 curl https://github.com

動作原理

Proxychains は LD_PRELOAD メカニズムを介してプログラムのネットワーク呼び出しをインターセプトします。

  1. システムコールのインターセプト:socket 関連の libc 関数をフックします。
  2. 接続のリダイレクト:すべての TCP 接続をプロキシサーバーにリダイレクトします。
  3. DNS プロキシ:プロキシサーバーを介してドメイン名を解決します。
  4. 透過的なプロキシ:アプリケーションを変更する必要はありません。

重要な制限:

  • 動的リンクされたプログラムのみをサポートします(statically linked プログラムはサポートされません)。
  • TCP 接続のみをサポートします(UDP はサポートされません)。
  • 特定のネットワークライブラリを使用する一部のプログラムは互換性がない可能性があります。

Claude 自動化ルール

規則 1: ネットワークエラーの自動再試行

IF コマンドがネットワーク関連のエラー(timeout, connection refused, DNS failure)を返す
THEN 自動的に proxychains4 を使用してそのコマンドを再試行する

規則 2: 既知の低速ソースへの強制プロキシ

IF 以下のドメイン/サービスにアクセスする場合:
  - github.com
  - raw.githubusercontent.com
  - pypi.org
  - npmjs.org
  - registry.npmjs.org
  - docker.io
  - gcr.io
THEN 直接 proxychains4 を使用する(失敗を待たずに)

規則 3: 失敗時のヒント

IF proxychains4 コマンドも失敗した場合
THEN ユーザーに以下を促す:
  1. プロキシサービスが実行されているか確認する(127.0.0.1:9910)
  2. proxychains 設定ファイルを確認する
  3. 他のプロキシアドレスを試す

トラブルシューティング

プロキシサービスの状態を確認する

# プロキシが利用可能かどうかをテスト
curl -x http://127.0.0.1:9910 https://www.google.com

# ポートがリッスンしているか確認
netstat -tunlp | grep 9910
# または
ss -tunlp | grep 9910

proxychains 設定を検証する

# 設定が正しいかどうかをテスト
proxychains4 curl https://ipinfo.io/json
# 本機の IP ではなく、プロキシサーバーの IP が表示されるはずです

共通のエラー処理

エラー 1: "proxychains: command not found"

# proxychains4 をインストール
sudo apt install proxychains4  # Debian/Ubuntu
sudo yum install proxychains-ng  # CentOS/RHEL

エラー 2: "timeout"

# プロキシアドレスの設定が正しいか確認
cat ~/.proxychains/proxychains.conf | grep -A 2 "\[ProxyList\]"

# タイムアウト時間を変更(設定ファイル内)
tcp_connect_time_out 15000
tcp_read_time_out 30000

エラー 3: "can't read configuration file"

# 設定ファイルを作成
mkdir -p ~/.proxychains
cp /etc/proxychains.conf ~/.proxychains/proxychains.conf
# その後、設定を編集

高度な使い方

マルチプロキシチェーン

# ~/.proxychains/proxychains.conf
strict_chain  # すべてのプロキシを順番に使用

[ProxyList]
http 127.0.0.1 9910
socks5 127.0.0.1 1080

動的プロキシチェーン

dynamic_chain  # 死んだプロキシを自動的にスキップ

[ProxyList]
http 127.0.0.1 9910
http 127.0.0.1 8080
socks5 127.0.0.1 1080

ランダムプロキシチェーン

random_chain
chain_len = 2  # ランダムに 2 つのプロキシを選択

[ProxyList]
http 127.0.0.1 9910
socks5 127.0.0.1 1080
socks5 127.0.0.1 1081

カスタム DNS サーバー

# カスタム DNS を使用してプロキシ経由で解決
export PROXY_DNS_SERVER=8.8.8.8
proxychains4 curl https://example.com

参考リソース

  • 公式リポジトリ: https://github.com/haad/proxychains
  • 設定ファイル: references/proxychains.conf (完全な例)
  • トラブルシューティング: references/troubleshooting.md
  • コマンドチートシート: references/quick-reference.md

結論

これらの原則を覚えておいてください:

  1. ネットワークエラーが発生した場合 → ✅ 自動的に proxychains4 を追加
  2. 🌐 海外リソースにアクセスする場合 → ✅ 積極的に proxychains4 を使用
  3. 🔧 プロキシも失敗した場合 → ✅ ユーザーにプロキシサービスを確認するように促す

デフォルトプロキシ: http://127.0.0.1:9910


このスキルにより、Claude はネットワークの問題が発生した場合に、ユーザーが手動で介入することなく自動的にプロキシを使用できます!

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Proxychains Network Proxy Skill

自动使用代理解决网络问题 - 当遇到网络连接失败、超时或访问受限时,自动使用 proxychains4 强制走代理。

When to Use This Skill

触发条件(自动应用):

  • ❌ Connection timeout errors
  • ❌ DNS resolution failures
  • ❌ "Connection refused" errors
  • ❌ HTTP 403/451 blocked access
  • ❌ GitHub/PyPI/npm 等国外资源访问失败
  • ❌ curl/wget/git/pip 等命令失败

Claude 应该:

  1. 检测到网络错误后,自动在命令前添加 proxychains4
  2. 使用默认代理配置:http://127.0.0.1:9910
  3. 如果代理失败,提示用户检查代理服务状态

Quick Reference

基本用法模式

# ❌ 原命令失败
curl https://github.com/user/repo

# ✅ 使用代理重试
proxychains4 curl https://github.com/user/repo

常见场景自动应用

场景 1: Git 操作失败

# 原命令
git clone https://github.com/user/repo.git

# 自动改为
proxychains4 git clone https://github.com/user/repo.git

场景 2: Python pip 安装失败

# 原命令
pip install requests

# 自动改为
proxychains4 pip install requests

场景 3: npm/yarn 安装失败

# 原命令
npm install package-name

# 自动改为
proxychains4 npm install package-name

场景 4: wget/curl 下载失败

# 原命令
wget https://example.com/file.tar.gz

# 自动改为
proxychains4 wget https://example.com/file.tar.gz

场景 5: Docker 拉取镜像失败

# 原命令
docker pull image:tag

# 自动改为
proxychains4 docker pull image:tag

场景 6: SSH 连接失败

# 原命令
ssh user@remote-host

# 自动改为
proxychains4 ssh user@remote-host

配置详情

默认代理配置

本地代理地址: http://127.0.0.1:9910

配置文件位置:

  • ~/.proxychains/proxychains.conf (推荐)
  • /etc/proxychains.conf (系统级)

快速配置脚本

创建用户级配置(自动使用 127.0.0.1:9910):

mkdir -p ~/.proxychains
cat > ~/.proxychains/proxychains.conf << 'EOF'
# Proxychains configuration
strict_chain
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000

[ProxyList]
http 127.0.0.1 9910
EOF

环境变量方式(临时使用)

# 设置代理环境变量
export PROXYCHAINS_SOCKS5_HOST=127.0.0.1
export PROXYCHAINS_SOCKS5_PORT=9910

# 使用
proxychains4 curl https://github.com

工作原理

Proxychains 通过 LD_PRELOAD 机制拦截程序的网络调用:

  1. 拦截系统调用:Hook socket 相关的 libc 函数
  2. 重定向连接:将所有 TCP 连接重定向到代理服务器
  3. DNS 代理:通过代理服务器解析域名
  4. 透明代理:应用程序无需修改

重要限制:

  • 只支持动态链接的程序(statically linked 程序不支持)
  • 只支持 TCP 连接(UDP 不支持)
  • 部分使用特殊网络库的程序可能不兼容

Claude 自动化规则

规则 1: 网络错误自动重试

IF 命令返回网络相关错误(timeout, connection refused, DNS failure)
THEN 自动使用 proxychains4 重试该命令

规则 2: 已知慢速源强制代理

IF 访问以下域名/服务:
  - github.com
  - raw.githubusercontent.com
  - pypi.org
  - npmjs.org
  - registry.npmjs.org
  - docker.io
  - gcr.io
THEN 直接使用 proxychains4(不等待失败)

规则 3: 失败提示

IF proxychains4 命令也失败
THEN 提示用户:
  1. 检查代理服务是否运行(127.0.0.1:9910)
  2. 检查 proxychains 配置文件
  3. 尝试其他代理地址

故障排除

检查代理服务状态

# 测试代理是否可用
curl -x http://127.0.0.1:9910 https://www.google.com

# 检查端口是否监听
netstat -tunlp | grep 9910
# 或
ss -tunlp | grep 9910

验证 proxychains 配置

# 测试配置是否正确
proxychains4 curl https://ipinfo.io/json
# 应该显示代理服务器的 IP,而不是本机 IP

常见错误处理

错误 1: "proxychains: command not found"

# 安装 proxychains4
sudo apt install proxychains4  # Debian/Ubuntu
sudo yum install proxychains-ng  # CentOS/RHEL

错误 2: "timeout"

# 检查代理地址配置是否正确
cat ~/.proxychains/proxychains.conf | grep -A 2 "\[ProxyList\]"

# 修改超时时间(在配置文件中)
tcp_connect_time_out 15000
tcp_read_time_out 30000

错误 3: "can't read configuration file"

# 创建配置文件
mkdir -p ~/.proxychains
cp /etc/proxychains.conf ~/.proxychains/proxychains.conf
# 然后编辑配置

高级用法

多代理链

# ~/.proxychains/proxychains.conf
strict_chain  # 按顺序使用所有代理

[ProxyList]
http 127.0.0.1 9910
socks5 127.0.0.1 1080

动态代理链

dynamic_chain  # 自动跳过死代理

[ProxyList]
http 127.0.0.1 9910
http 127.0.0.1 8080
socks5 127.0.0.1 1080

随机代理链

random_chain
chain_len = 2  # 随机选择 2 个代理

[ProxyList]
http 127.0.0.1 9910
socks5 127.0.0.1 1080
socks5 127.0.0.1 1081

自定义 DNS 服务器

# 使用自定义 DNS 通过代理解析
export PROXY_DNS_SERVER=8.8.8.8
proxychains4 curl https://example.com

参考资源

  • 官方仓库: https://github.com/haad/proxychains
  • 配置文件: references/proxychains.conf (完整示例)
  • 故障排除: references/troubleshooting.md
  • 命令速查: references/quick-reference.md

总结

记住这些原则:

  1. 遇到网络错误 → ✅ 自动加上 proxychains4
  2. 🌐 访问国外资源 → ✅ 主动使用 proxychains4
  3. 🔧 代理也失败 → ✅ 提示用户检查代理服务

默认代理: http://127.0.0.1:9910


这个技能让 Claude 在遇到网络问题时自动使用代理,无需用户手动干预!

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。