このコマンドのテストと入力中
curl -x socks5://<user>:<pass>@<ip>:<port> ifconfig.co
エラーメッセージを返します
Can't complete SOCKS5 connection to <ip address v6>
ipv6を無効にするとカールテストが機能しますが、これは正しいアプローチではありません。このチュートリアルを適用してみましたが、まだ成功していません。
http://www.inet.no/dante/doc/latest/config/ipv6.html
================================================== ===========
Dante 構成ファイル
logoutput: /var/log/socks.log
internal: enp0s3 port = 1080
external: enp0s3
clientmethod: none
socksmethod: none
user.privileged: root
user.notprivileged: nobody
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: error connect disconnect
}
client block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: error connect disconnect
}
socks block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}
答え1
~からhttps://www.inet.no/dante/doc/1.4.x/config/ipv6.html
変更のために sockd.conf を設定します。 example.com)、これらのインターフェイス名またはホスト名には、現在または将来のIPv6アドレスを含めることができます。
内部インターフェイスがIPアドレスの1つではなく名前で指定されている場合、Danteサーバーはデフォルトで内部インターフェイスのすべてのアドレスを使用します。インターフェイスに複数のIPv6アドレスがある場合、DanteサーバーもIPv6アドレスを使用します。
インターフェイスenp0s3
にipv6アドレスが割り当てられていることを確認してください。その場合、danteはそのアドレスを使用しようとします。これを念頭に置いてenp03s
ipv4アドレスに置き換えることで問題が解決します。
例:
internal: 10.2.4.6 port = 1080
答え2
DanteサーバーがIPv4アドレスとIPv6アドレスの両方に対する要求を受け入れるには、内部sockd.confキーワードの引数として両方のタイプのアドレスを含むネットワークインターフェースを指定するか、別のアドレスで複数回指定する必要があります。たとえば、
#accept SOCKS requests on 10.0.0.1 (IPv4) and fc00::01 (IPv6)
internal: 10.0.0.1 port = 1080
internal: fc00::1 port = 1080
Dante の設定ファイルには、2 つのアドレスタイプのルールも必要です。
#accept connections from any IPv4 client
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
}
上記は、すべてのIPv4クライアントがDanteサーバーに接続できるようにするIPv4アドレスルールの例です。 IPv6に対応するルールは次のとおりです。
#accept connections from any IPv6 client
client pass {
from: ::/0 to: ::/0
}
上記の2つのルールは1つのアドレスタイプにのみ一致し、最初のルールはIPv4にのみ一致し、2番目のルールはIPv6にのみ一致します。アドレス系列に関係なくすべてのアドレスを許可するルールを追加するには、次の特殊なDante関連アドレス構文(0/0)を使用できます。
#accept connections from any client
client pass {
from: 0/0 to: 0/0
}