1

OSI モデルによると、データ パケットは複数の層で完成します。完全な TCP または UDP パケット(ヘッダーなどを含む) をプログラムで送信することは可能ですか?

たとえば、カスタム MAC ADD を含むパケットです。送信者(リクエスタ)の偽のIP?

4

1 に答える 1

1

はい。RAWソケットを使用して送信する場合は、TCPまたはUDPパケットヘッダーを配置できます。RAWソケットには、システムへのルートアクセス権が必要です。

sock = socket(PF_INET, SOCK_RAW, IPPROTO_UDP);

または、Linux TCPスタックをバイパスして、イーサネットカードで直接write()およびread()を実行することもできます。

問題は、TCPで偽のIPを使用すると、実際のIPがそれを拒否するか、単にルーティングされないため、SYN​​要求からの応答が得られないことです。「ipスプーフィング」キーワードを照会すると、これについて調査できます。

于 2012-08-26T00:37:31.413 に答える