¿Cómo se cambia una dirección IP en C ++?

Necesito hacer varias cosas relacionadas con la red en C ++ que normalmente haría conifconfig en Linux, pero me gustaría hacerlo sin analizar el resultado de un grupo de llamadas al sistema. ¿Qué bibliotecas C o C ++ puedo usar para saber si un adaptador de red está activo o inactivo, leer o cambiar la dirección IP y la máscara de red de un adaptador y cambiar la puerta de enlace DNS predeterminada?

Respuestas a la pregunta(3)

Su respuesta a la pregunta