I was always in search of a tool that allow me create own network packet by giving values in protocol fields. My search ends with scapy. scapy is great tool to craft tcp/ip packets and send it over network. This is how i used scapy to test my firewall rule,
I sent a packet which has TCP flags syn set for port number 80 on destination 192.168.1.3
(Note: The lines in {} is comment)
root#scapy
>>>ans,uans=sr(IP(dst="192.168.1.3")/TCP(sport=1100,dport=80,flags="S")) {sr stand for send/receive}
Finished to send 1 packet ....
>>>for snd,rcv in ans: {don't forget to mention : at end}
... {put space here} print snd.seq,rcv.seq
... {press enter key}
0 12987
So, i got the sequence number of sent packet as well of received packet.
I sent a packet which has TCP flags syn set for port number 80 on destination 192.168.1.3
(Note: The lines in {} is comment)
root#scapy
>>>ans,uans=sr(IP(dst="192.168.1.3")/TCP(sport=1100,dport=80,flags="S")) {sr stand for send/receive}
Finished to send 1 packet ....
>>>for snd,rcv in ans: {don't forget to mention : at end}
... {put space here} print snd.seq,rcv.seq
... {press enter key}
0 12987
So, i got the sequence number of sent packet as well of received packet.