I haven't seen the entire code, but there's two things that look problematic:
Code:
ip.ip_src.s_addr = inet_addr("172.17.13.90");
Using your external IP is a bad idea for two reasons: it's likely to change, and it doesn't work. Instead, use your local IP (and ioctls to find it), and then your router will convert it into the external IP.
Code:
if ((size_Buffer = recvfrom(SOCK_RAW, Buffer, MAX_BUFFER_SIZE, 0, NULL, NULL)) < 0){
You're not receiving from the socket, you're receiving from SOCK_RAW, which isn't anything. Instead, pass the socket.