Endianness - они имеют четыре байта в противоположных порядках:
1734763876 = 0x67 66 65 64
1684366951 = 0x64 65 66 67
Значение, которое вам нужно использовать для URL-адресов и т. Д., - это значение в порядке «Сеть», сначала «Самый старший из байтов»,Используйте htonl()
(host-to-network-long) для преобразования значения, то есть
printf("%i\n%i\n", htonl(inet_addr("100.101.102.103")), htonl(sin.sin_addr));
caf указывает на то, что у меня, вероятно, есть это задом наперед: проблема действительно в том, что вам нужнопреобразовать данные сетевого порядка из функций сокета обратно в порядок хоста для отображения, т.е.
printf("%i\n%i\n", ntohl(inet_addr("100.101.102.103")), ntohl(sin.sin_addr));