他のホストでUnixドメインソケットを使用する

他のホストでUnixドメインソケットを使用する

実際、私はARM-Linuxで3つのアプリケーションを実行するソフトウェアを持っています。 Linuxホストx86でアプリケーションを実行したいです。

私のARM-Linuxプログラムの内部コンポーネントは、通信にUnixドメインソケットを使用します。

私のソケットタイプはAF_UNIXです。

Valgrindをサポートしていない古いARMプロセッサを使用しています。アプリケーションでいくつかのメモリリークが発生し、競合が発生しました。そこで、ホストシステムでアプリケーションを構築し、ドメインソケットを使用してARMとx86間の通信を確立する方法を見つけました。


これで、アプリケーションがfooARMにあり、barLinux x86の状況が発生しました。問題は、異なるホストが互いに通信できるかどうかです。


以下のリンクを読んだ後、Unixドメインソケットがクロスドメインであると思っていましたが、混乱しています。

私は読んだ、

UNIXドメインソケットは、同じホスト上のプロセスのための方法です。通信が可能です。双方向通信にはストリームソケットを使用します。

fd = socket(AF_UNIX, SOCK_STREAM, 0);

ベストアンサー1

カント。AF_UNIXソケットをバインドするためにファイルシステムのローカルinodeを参照し、ローカルファイルシステムはローカルホストでのみ機能するため、ソケットを使用してネットワーク上のホスト間で通信することはできません。

AF_INETノード間で通信するには、IPアドレスとポートにバインドされて別のホストに接続できるソケットを使用する必要があります。

おすすめ記事