2つのコンピュータ間で直接通信するためにsocket()を使用でき、イーサネットケーブルが1つのコンピュータのポートを直接に接続できるかどうかを知りたいと思います。インターネットなしでIP/TCP経由で話すことができますか?
どちらのコンピュータもルータに接続していないので、どちらのコンピュータにもIPアドレスを与えることはできません。
IPアドレスを持たないソケットを作ることはできますか?
2つのコンピュータ間で直接通信するためにsocket()を使用でき、イーサネットケーブルが1つのコンピュータのポートを直接に接続できるかどうかを知りたいと思います。インターネットなしでIP/TCP経由で話すことができますか?
どちらのコンピュータもルータに接続していないので、どちらのコンピュータにもIPアドレスを与えることはできません。
IPアドレスを持たないソケットを作ることはできますか?
適切なソフトウェアをお持ちであれば、コンピュータの内部IPを割り当てて通信することができます。すべてがネットワークに依存し、アドレス割り当てをどのように処理するかによって異なります。
アドレスを使用する唯一の懸念は、送信者にアドレスを知らせ、受信者がそのアドレスを自分のものとして使用することを確認することです。
たとえば、コンピュータ1にIP 0.0.0.1
があり、コンピュータ2にIP 0.0.0.2
があるとすると、自分の小さなピアツーピアネットワーク内で会話することができます。
私は手動でIPアドレスを割り当てても、そのアドレスは何に制限されていますか?たとえば、1台のコンピュータのみがもう一方のコンピュータに接続していて、2台目のコンピュータにWi-Fi接続があり、有効なIPアドレスを持っている場合は、未接続のコンピュータに必要なアドレスを選択できますか、正しく選択しない? – Zephyr
いずれかまたは両方がインターネットに接続している場合、アドレスが重複すると問題が発生する可能性があります。その場合、他のデバイスに接続しようとしないか、またはP2P接続内でのみipsと通信するようにするために、いくつかのユニークなips(通常は未使用の範囲)を使用する必要があります。 – Uriel
2台のコンピュータでTCP/IPまたはUDP経由で通信するためのルーターは必要ありません。 IPアドレスだけが必要です。あなたは、ルータに差し込むか、WiFiネットワークに接続したときに何が起こるか、一般的である
DHCP、:彼らはIPアドレスを取得する方法3つのメカニズムがあります。
各ネットワークインターフェイスに静的IPアドレスを明示的に設定する手動IP設定。
Self-assigned link-local addressesこれは、現代のオペレーティングシステムは、通常、DHCPサーバーから何の助けも得ていないときに頼るものです。
ほとんどの場合、2台のコンピュータは#3に頼って、169.254.xの範囲内のIPアドレスを割り当てます。あなたの唯一の問題は、実際に割り当てられたIPアドレスを発見することです。あなたのプラットフォームのコマンドラインifconfig
/ipconfig
ツールを使用することができます。
これは、ケーブルの両側に特別なヒントを必要とする可能性があります。スーパユーザのブランチに問い合わせてください。 –