私は、プログラマーがインターネット プロトコル スイートのレイヤー 2 (IP ヘッダー) にアクセスできるようにする C 言語の Raw Berkeley Sockets を使用してきました。特にワイヤレスローカルエリアネットワークに関して、生のソケットがレイヤー1(リンクレイヤー)でトランスポートを処理する方法を知りたいです。
たとえば、ソケットはどのネットワーク インターフェイス (eth0 または wlan0) にパケットを送信するかをどのように認識しますか?
ワイヤレス ルーターの背後にいる場合でも、IP ヘッダーの IP ソース アドレスに LAN アドレス (192.168.1.1) またはルーターのインターネット アドレス (74.125.226.68) を入力する必要がありますか?
IP ソース アドレスに LAN アドレス (192.168.1.1) を入力した場合、IP ヘッダーはルーターを通過するときに変更されますか、それともそのままで、パケットの受信側が送信しようとしますか?ネットワーク上のローカル ホストへの応答?
この分野での洞察をいただければ幸いです。