%20%E3%81%AE%E3%83%86%E3%82%B9%E3%83%88%20.png)
クライアント (Linux)-サーバー (Windows) アプリケーションがあります。メイン OS として Windows 7 を使用し、VirtualBox 上に Ubuntu 18.04 をインストールしています。クライアントが IPv6 経由でサーバーに接続できることをテストする必要があります。これをどのように設定すればよいですか?
答え1
する必要があるテストクライアントが IPv6 経由でサーバーに接続できること。
両端を確認する必要があります。このサイトでは Linux エンドポイントのみがトピックに該当します。(ただし、どこまでできるかはわかります。十分に進んだら、Windows で何が機能するかを調べることができます :-)。
可能性は4つくらいしかありません。
次のコマンドを実行します:ip -6 addr
1. IPv6 アドレスがありません: で始まる行がありませんinet6
。テストは失敗します。
2. IPv6 リンクローカル アドレスのみ:inet6
ターゲット ネットワークに面するネットワーク インターフェイスの下の行はすべて で始まりますfe80::
。技術的にはリンクローカル アドレスを使用することは可能ですが、一部のアプリではサポートされていません。可能であれば、この状況を解決してください (つまり、テストの失敗として扱います)。
どのネットワーク インターフェイスがターゲット ネットワークに面していますか?
- Linux ループバック インターフェイスが呼び出されます
lo
。無視してください。 - ほとんどの Linux 物理インターフェースは
e
(Ethernet)、wl
(wireless)、ww
(wide-area wireless)、またはあまり一般的ではないppp
(miscellaneous nonsense :-P) で始まります。この場合、これらは無視します。 - 仮想マシン向けのLinuxインターフェース傾向があるで始まる名前になります
v
。VirtualBox は を使用しvboxnet
、libvirt (virt-manager) は を使用しますvirbr
。あなたの場合、必要なインターフェースはほぼ間違いなくこれらのいずれかです。
3. 潜在的にルーティング可能な IPv6 アドレス: つまり、先頭に が付いていないアドレスが少なくとも 1 つfe80::
。テストはまだ失敗していません :-)。次の手順に進みます。
ルーティング可能な IPv6 アドレスを特定したら、他のシステムからそのアドレスへの接続をテストできます。
ping6
大丈夫です -もしping はファイアウォールによってブロックされていないことがわかります。
ファイアウォールがブロックしていない限り、ファイアウォールでpingをブロックしないことをお勧めします。全て着信接続。そうしないと、意味がなくなり、自分の生活が困難になるだけです。
pingを許可できない場合
アプリケーションには指示が記載されていますどこかファイアウォールを通過できるようにするために、どの番号のポート (およびポートの種類) を使用するかを指定します。
TCPポートへの接続をテストするには、 を使用しますsudo nmap -sT -p 1,$MYPORT $MYADDRESS
。また、sudo nmap -sT -F $MYADDRESS
一般的なポートをスキャンするために を使用することもできます。後者は、特定のポートで接続が可能であることを示す場合に役立ちます。違うポート、たとえば、ファイアウォールを通過する正しいポートを許可することを忘れた可能性があります。
UDPポートをテストするには、-sU
の代わりにを使用します-sT
。UDPnmap -sU -F
スキャンははるかに遅いTCP スキャンよりも優れています。
成功したテストがどのように見えるかを確認するには、アドレス::1
(localhost) をスキャンします。localhost にまだポートが開いていない場合は、2 番目のターミナル ウィンドウを開いて を実行し、検出するncat -l ::1 22
偽の SSH サービスを実行しますnmap
。
リンクローカルアドレス
リンクローカル アドレスに接続する必要がある場合は、リンク ID を含める必要があります。たとえば、ping
リンクの fe80::1 に接続するにはvboxnet0
、 を実行しますping6 fe80::1%vboxnet0
。リンクローカル アドレスがあまり役に立たない理由の 1 つは、すべてのアプリケーションがリンク ID の指定方法を認識しているわけではないことです。