0
我想使用原始套接字發送數據包。製作數據包的目標IP與原始套接字發送的目標ip參數之間的區別()
如果我創建一個IP數據包(icmp,tcp或udp數據包),則源IP和目的IP位於IP數據包中。現在我想通過以下線路發送它:
memset(&sin, 0, sizeof(sin));
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = inet_addr(dst_ip);
sendto(sd, packet, 60, 0, (struct sockaddr *)&sin, sizeof(sin));
當然dst_ip
應該是相同的數據包中的目的IP。
我想知道如果dst_ip
不是在數據包中的目標IP相同會發生什麼。在我看來,dst_ip
用於決定應使用哪個NIC發送數據包。而製作的數據包中的目標IP不會被dst_ip
更改,並且將由網絡內路由器處理。
我的理解是否正確?還有其他的區別嗎?
謝謝!
我沒有找到你的答案和我的問題之間的強烈關係 – misteryes
@misteryes請參閱編輯。 – EJP