
成功せずにipv6アドレスをカリングしようとしています。
私が言おうとすると:
私はタイムアウトを待っていますnetwork unreachable
強制すると、ipv4
すべてが大丈夫です。
カール-4https://google.com
それからipv6を次のように強制すると:
カール-6https://google.com
私は得る:
カール: (7) 2800:3f0:4001:806::1005 に接続できません: ネットワークに接続できません。
ipv6
アドレスを解析することに関連していると思います。
一部のLinuxディストリビューションの最新バージョンを使用している他のコンピュータでは、これらの要求が正しく機能していることがわかりましたUbuntu 10.10
。
option:を使用せずに正常にカールできるようにしたいです。アドレスを正しくカリングするには、-4
何を変更する必要がありますか?ipv6
答え1
IPv6アドレスを確認することは問題ではありません。カールがネットワーク 2800:3f0:4001:806::1005 に到達できないことを報告するため、名前解決は正常に機能します。これは、名前変換が実際に成功したことを示します。これは名前検索エラーとは異なります。
$ curl -6 http://does.not.exist.foo.
curl: (6) Couldn't resolve host 'does.not.exist.foo.'
IPv6アドレスに到達するには、宛先アドレスへのパスが必要であり、IPv6接続を持つ接続はほとんどありません。この記事を書いているコンピュータにはv6ルーティングがほとんどありません。
$ route -A inet6
Kernel IPv6 routing table
Destination Next Hop Flag Met Ref Use If
fe80::/64 :: U 256 0 0 wlan0
ff00::/8 :: U 256 0 0 wlan0
これはあなたと私が私のローカルネットワークにアクセスする方法を知っていることを意味し、それはすべてです。これを私のIPv4ルーティングと比較してみてください。
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0
…
これは、非常に重要なルーティング情報が得られたことを示します。私は192.168.1.1のプライマリルータにパケットを転送し、明示的なパスなしでどこにでも移動する方法を知っています。
名前解決が正しく機能しています。ターゲットネットワークへのIPv6パスが必要ですが、この機能を提供する場所が少なすぎます。
答え2
ifconfig
で始まる行の出力を確認してくださいinet6 addr
。お使いのコンピュータに実際には機能しないIPv6アドレスが割り当てられている可能性があり、Linuxは現在動作しているIPv4アドレスの代わりに機能しないアドレスを使用しようとしています。
答え3
別のネットワークに接続してみましたが、うまくいきました。
その間、OSをMINT v15にアップデートしましたが、問題は解決しません。
事実、一度だけすればすべてがcurl
大丈夫だろうから、状況はさらに不思議になります。 2番目にすると、同じエラーが発生するためです。
結局、ISPに電話をかけ、彼らはモデムを工場出荷時の設定に設定し、ソフトウェアを更新しました。
今、すべてがうまくいっているようです。
答え4
私のような人がGoogleでこの問題を見つけた場合は、問題を解決するためにIPv6のファイアウォールルールを調整する必要がありました。
基本的に私は着信チェーンのすべてをブロックしました。接続を許可するルールを追加した後、pingリクエストとlocalhost IPv6接続からのすべてが機能し始めました!