PS3で日本のカラオケゲームをプレイしようとしていますが、待ち時間がひどく、曲のダウンロードに永遠に時間がかかります。私が得た推奨事項の1つは、OpenSSH経由で日本の友人のサーバーにログインしてラップトップをSOCKSプロキシに変えることでした。
[サーバー] - sshトンネル)--- [wlan0 <ラップトップ> eth0] --- [PS3]
それが私がしたことです:
ssh -ND 4711 [email protected]
その瞬間、Firefox(SOCKSプロキシ設定を使用)を使用してラップトップからgoogle.comにアクセスしようとしましたが、google.co.jpにリダイレクトされました。すごい。
次に、イーサネット経由でPS3をラップトップに接続したいと思いました。
最初に静的IPをeth0に割り当てました。
ip link set dev eth0 up
ip addr add 139.96.30.100/24 dev eth0
次に、ラップトップでDHCPサーバーを起動して、PS3にIPを提供しました。
systemctl start dhcp4.service
そして最後に、いくつかのiptablesマジックでNATを有効にしました:
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
「ネットワーク設定」に行き、PS3とニースからの接続をテストしましたが、うまくいったようです。 Webブラウザーを起動すると、google.comがgoogle.frにリダイレクトされました。なんてばかげているのか、接続を正しいポートに転送するのを忘れました。
動作しなかったiptablesを介した多くの接続転送の後、透過プロキシ:redsocksを使用してみることにしました。 ---(http://darkk.net.ru/redsocks/
インストール後、ニーズに合わせて/etc/redsocks.confを変更しました。
redsocks {
local_ip=0.0.0.0; // documentation says: "use 0.0.0.0 if you want to listen on every interface"
local_port=31388;
ip=127.0.0.1;
port=4711;
}
残りはそのままで https://github.com/darkk/redsocks/blob/master/redsocks.conf.example
インストールしたパッケージに含まれている基本的なredsocks.rulesを使用しました。
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:REDSOCKS - [0:0]
# Redirect all output through redsocks
-A OUTPUT -p tcp -j REDSOCKS
# Whitelist LANs and some other reserved addresses.
# https://en.wikipedia.org/wiki/Reserved_IP_addresses#Reserved_IPv4_addresses
-A REDSOCKS -d 0.0.0.0/8 -j RETURN
-A REDSOCKS -d 10.0.0.0/8 -j RETURN
-A REDSOCKS -d 127.0.0.0/8 -j RETURN
-A REDSOCKS -d 169.254.0.0/16 -j RETURN
-A REDSOCKS -d 172.16.0.0/12 -j RETURN
-A REDSOCKS -d 192.168.0.0/16 -j RETURN
-A REDSOCKS -d 224.0.0.0/4 -j RETURN
-A REDSOCKS -d 240.0.0.0/4 -j RETURN
# Redirect everything else to redsocks port
-A REDSOCKS -p tcp -j REDIRECT --to-ports 31338
COMMIT
これにより、FirefoxとluakitでのSOCKSプロキシ設定の使用を停止することができました。これは、google.comがgoogle.co.jpテストに変わることで確認しました。
NATを有効にする必要があると思ったので、やり直しました:
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
PS3は明らかにシステム全体のプロキシをバイパスし、google.comはgoogle.frにリダイレクトされました。次に、マスカレードなしのredsocks.rulesファイルをそのまま使用しました。 redsocksサーバーは明らかにすべてのインターフェイスでリッスンしているので、とにかくNATは必要ないと思いました。
PS3を再度接続しようとすると、次のメッセージが表示されます(PS3がDHCPサーバーからIPを取得し、インターネット接続の取得に失敗した後)。
「サーバーとの通信中にエラーが発生しました。これはDNSエラーです。」
それが私が今いるところです。ドキュメントによるとこれを行うdnstcと呼ばれるDNSサーバーを使用しているため、redsocksでは問題になる可能性があると思います。
dnstc {
// fake and really dumb DNS server that returns "truncated answer" to
// every query via UDP, RFC-compliant resolver should repeat same query
// via TCP in this case.
local_ip = 127.0.0.1;
local_port = 5300;
}
私の大げさな推測では、私のPS3はUDPを介してDNS解決を要求し、dnstcは常に「切り捨てられた回答」で応答します。私が正しく理解していれば、TCPを介してリクエストを再送信する必要がありますが、代わりにDNSエラーが発生するようです??
私は何をすべきか?またはより正確に:
そのテキストの壁を読んでくれてありがとう!それが最初の質問のためにあまり吸わないことを願っています...
静的DNSサーバーを使用するようにPS3を設定できます。 208.67.222.222
と208.67.220.220
にサーバーがある OpenDNS を試すか、8.8.8.8
と8.8.4.4
に GoogleのパブリックDNSサーバー を試すことができます。