Como você altera um endereço IP em C ++?

Preciso fazer várias coisas relacionadas à rede em C ++ que normalmente faria comifconfig no Linux, mas eu gostaria de fazer isso sem analisar a saída de um grupo de chamadas do sistema. Quais bibliotecas C ou C ++ posso usar para saber se um adaptador de rede está ativado ou desativado, ler ou alterar o endereço IP e a máscara de rede de um adaptador e alterar o gateway DNS padrão?

questionAnswers(3)

yourAnswerToTheQuestion