IP Routing table - RTNETLINK - sockets

I wish to manipulate the routing table in Linux without having to make
system calls out to ‘route’. I know that in C this can be done by using
a socket and RTNETLINK. How can I accomplish this in Ruby?

This is for an embedded application, so I don’t want to drag in lots of
libraries.