パケットを投げるプログラムを拾ってきたので読んでいます。。。
ソケットプログラミングのヘッダファイル
- sys/socket.h
- netinet/in.h
- arpa/inet.h
L3L4ヘッダ定義用のヘッダファイル
hexdump([バッファ用メモリアドレス][index])
main関数の中で呼び出されたらindexのぶんだけバッファのアドレスを出力? デバッグ用?
uint8_t
uint16_t
uint32_t
型。ヘッダ情報を構造体で作る、IPとプロトコルとレングス?
main関数
argvはプログラムに渡す引数の配列?
IPはポインタで??
char *data:IPヘッダの最終番地を入れる、ペイロードの開始番地に等しい? 細かいヘッダの中身はmain内で定義されている、代わりに大まかな作りは関数にまとめている
TCPヘッダ、synフラグだけ1になってる
ウィンドウサイズ:htons(155)とは。。
送るbyte数はsendto()の中で定義されたものが代入される
送れない場合はbyte数が負の数だったときと仮定してperrorを返す