c - 如何以编程方式编辑路由表

标签 c linux networking

我正在编写一个在嵌入式平台上运行的守护进程,它需要根据给定时间连接到的接口(interface)更改设备的默认路由。我如何以编程方式执行此操作?我知道我可以使用 system("route del default && route add default gateway blah");等,但有更直接的方法吗?

更新:我发现了一个允许 replacedefaultroute 选项的 pppd 补丁,从而解决了我的特殊问题。该补丁还包括用于以编程方式修改路由表的代码。它包含在此 gentoo 错误报告中 http://bugs.gentoo.org/227321

最佳答案

查看 SIOCADDRT/SIOCDELRT ioctls(Stevens 的“Unix 网络编程”将是一个很好的引用。)

关于c - 如何以编程方式编辑路由表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/750006/

相关文章:

c - 如何创建自定义的 stdheader(不是 .h 文件)?

c - 在c中获取二维数组的元素?

c++ - 无法理解 C 中字符串和循环的这种意外行为

Linux+视频采集和显示语言

c - 获取C 中函数的地址?

java - Azure 和 Apache Mina

c - 如何在共享库中使用 popen()?

linux - 如何使用 jython WSadmin 设置默认 JTA 数据源 JNDI 名称

c - libpcap 格式 - 数据包 header - incl_len/orig_len

networking - TCP/UDP 的延迟是多少?