[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Guile Netlink 1.0 released
From: |
Julien Lepiller |
Subject: |
Guile Netlink 1.0 released |
Date: |
Sun, 14 Mar 2021 20:31:10 +0100 |
Hi!
I'm proud to announce the first release of Guile Netlink!
git clone https://git.lepiller.eu/git/guile-netlink
cd guile-netlink
git checkout 1.0 # or 29ff43368f1cc2d10a7e5f09dc9f80f85582d6ee
git tag -v 1.0
The 'git tag -v' command check the authenticity of your checkout. You
may need to retrieve the signing key first:
gpg --keyserver pool.sks-keyservers.net \
--recv-keys 1EFB09091F17D28CCBF9B13A53D457B2D636EE82
Guile Netlink provides three components:
- A helper library for implementing netlink protocols
- An implementation of rtnetlink, one of the netlink protocols. It is
used to query and alter the state of the network stack in Linux.
- A high-level API implemented on top of rtnetlink and inspired by
iproute2's commands
Here are a few examples (most of which will only work as root and will
really modify your network), extracted from the manual:
;; same as "ip l add v0p0 type veth peer v0p1"
(link-add "v0p0" "veth" #:type-args '((peer . "v0p1")))
;; same as "ip a add 192.0.2.15/24 dev enp1s0
(addr-add "enp1s0" "192.0.2.15/24")
(addr-add "enp1s0" "2001:db8::1a4c/64" #:ipv6? #t)
;; removing the previous addresses, as in "ip a del 192.0.2.15/24 dev
;; enp1s0"
(addr-del "enp1s0" "192.0.2.15/24")
(addr-del "enp1s0" "2001:db8::1a4c/64" #:ipv6? #t)
;; same as "ip a" or "ip addr show"
(addr-show)
;; same as "ip r add default via 192.0.2.1 dev enp1s0"
(route-add "default" #:device "enp1s0" #:via "192.0.2.1")
;; same as "ip r add 192.0.2.0/24 dev enp1s0 src 192.0.2.15"
(route-add "192.0.2.0/24" #:device "enp1s0" #:src "192.0.2.15")
Hopefully, the high-level API can be used on Linux to replace our
current implementation of container networking and static networking
service type.
You will find the complete documentation online at
https://git.lepiller.eu/guile-netlink/manual, the code is available at
https://git.lepiller.eu/guile-netlink (note that the clone URL is
different, see above) and you can report any issue, patch and ideas to
me, by email.
Hope you'll enjoy!
Julien
- Guile Netlink 1.0 released,
Julien Lepiller <=