I have code written in C. I want to get using C code information that is stored in routing table. Is it possible?
You can also run "strace route add ..." to see how the route
command does it.
On my system, it uses ioctl
with SIOCADDRT
. A little searching turns up some sample code.
Oddly, the best documentation I have found is from IBM's AS400 man pages.
If you just want to read the routing table, you can open and read /proc/net/route
. (Again, strace
shows that this is how the route
command does it.) The hex numbers are 32-bit IP addresses in machine-endian form. Try cat /proc/net/route
.
You can open a netlink socket and send route update messages. There is an article about how to do this.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With