Каковы будут недостатки / риски использования AF_UNSPEC?

Из Руководство Beej по сетевому программированию

Вы можете заставить его использовать IPv4 или IPv6 в поле ai_family или оставить AF_UNSPEC для использования что бы ни. Это круто, потому что ваш код может не зависеть от версии IP.

Как сказано в заголовке - каковы будут недостатки (или риски, если таковые имеются) всегда использовать AF_UNSPEC вместо указания IPv4 или IPv6?

Или это только по одной причине - если версия указана, это будет гарантировать, что эта и только эта версия будет поддерживаться?


Немного предыстории - я думаю о добавлении поддержки IPv6 в клиент-серверных (C ++) приложениях, и обе версии должны поддерживаться. Поэтому я подумал, можно ли использовать AF_UNSPEC или лучше «распознать» адрес из строки и использовать AF_INET6 или AF_INET , в зависимости от адреса.

8
задан Ashley Dixon 13 May 2018 в 20:28
поделиться