VPN環境下でもChatGPTを使えるようにする

2 min read

こんにちは、無能です。
VPN通信上ではChatGPTで判定食らってブロックされてしまうので特定のサービスだけ回避したい時に有効です。

ドメインが差しているIPを確認

digでDNSに問い合わせを行い帰ってきたIPアドレスを確認します。

# dig +short chat.openai.com
chat.openai.com.cdn.cloudflare.net.
104.18.37.228
172.64.150.28

なるほど。

VPNサーバ側のルーティング上でデフォルトゲートウェイを通す

VPNサーバ側でroute addでデフォルトのネットワークを介する、VPN通信しないようにします。
VPS上だと、192.168.1.1から変更されている事も多々なので以下で確認します。

netstat -nr | grep default

そして、以下でルーティングを変更します。

route add `dig +short chat.openai.com`で帰ってきたIP デフォルトゲートウェイ

これで、ChatGPTを開くと開けるはずです。

自動でルーティング設定するスクリプト

chat.openai.comのIPアドレスは定期的に変更するので、定期的に実行する必要があります。
そのためcronジョブとしてスクリプト上でdigroute addすればいいわけです。

#!/bin/bash

# リストのドメインを定義
DOMAINS=("chat.openai.com" "example.com" "google.com")

# デフォルトゲートウェイ
GATEWAY="192.168.1.1"

# 各ドメインのIPアドレスを取得し、ルーティングを追加
for DOMAIN in "${DOMAINS[@]}"; do
  # ドメインのIPアドレスを取得
  IP_ADDRESSES=$(dig +short $DOMAIN | grep [0-9])

  # 各IPに対してルーティングを追加
  for IP in $IP_ADDRESSES; do
    route add $IP $GATEWAY
  done
done

これで、ChatGPT以外でもブロックされているものがあっても気軽にドメイン追加しルーティングすることが可能となりました。 ※上記はroot権限実行を前提としています。


それではまた。よろしくおねがいします。

PGP --- Contact --- Machines