[질문] gateway 바꾸는 방법 c code 를 이용해서.

onrun의 이미지

안녕하세요.
linux 에서 gateway 를 바꿀때 쉘에서

#route add default gw ip .. 이런식으로 했는데요.

gateway 주소를 c code 로 짜서 바꾸고 싶습니다.

route.c 소스를 다운받아 봤는데.. 알 수가 없었습니다.

직접 라우팅 테이블 편집하는것 같긴한데... 어렵네요..

hostip 나 netmask 는 ioctl() 로 했었는데 gateway도 비슷한건지..궁금합니다.

더불어 DNS 주소 설정도 /etc/resolv.conf 편집하는거 말고 c code 상에서 직접 바꾸는 방법 아시면

꼭좀 가르침 부탁드리겠습니다.

모지리의 이미지

네 맞습니다.

ioctl이나 netlink 두가지 방식중에 편한 방식을 선택하시면 됩니다.

둘다 장단점이 있습니다. 관련된 소스를 한번 보시면 이해가 빠를겁니다.

onrun의 이미지

감사합니다.