Visual editor and API for network environments script generation.
Define your network components and download a BASH script creating your setup.
root@(none):/# ./netpen.sh
____ _
| _ \ ___ _ _ | |_ ___ _ __
| |_) | / _ \ | | | || __| / _ \| '__|
| _ < | (_) || |_| || |_ | __/| |
|_| \_\ \___/ \__,_| \__| \___||_|
+-----------+------------------------------------+
| Namespace | IPv4 |
+-----------+------------------------------------+
| a | 198.51.100.130/25 (atorouter.dev1) |
+-----------+------------------------------------+
| b | 198.51.100.2/25 (btorouter.dev1) |
+-----------+------------------------------------+
| router | 198.51.100.129/25 (atorouter.dev2) |
| | 198.51.100.1/25 (btorouter.dev2) |
+-----------+------------------------------------+
net.ipv4.route.mtu_expires = 15
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.forwarding = 2
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.forwarding = 2
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.forwarding = 2
[ 10.578767] ip (1451) used greatest stack depth: 12224 bytes left
[ 10.769523] random: crng init done
[ 10.777003] IPv6: ADDRCONF(NETDEV_CHANGE): atorouter.dev1: link becomes ready
[ 10.923704] ip (1460) used greatest stack depth: 12096 bytes left
[ 11.121881] IPv6: ADDRCONF(NETDEV_CHANGE): btorouter.dev1: link becomes ready
root@(none):/# [ 11.578224] IPv6: ADDRCONF(NETDEV_CHANGE): atorouter.dev2: link becomes ready
root@(none):/# ip netns exec a ping 198.51.100.2
PING 198.51.100.1 (198.51.100.2) 56(84) bytes of data.
64 bytes from 198.51.100.2: icmp_seq=1 ttl=63 time=7.00 ms
64 bytes from 198.51.100.2: icmp_seq=2 ttl=63 time=0.956 ms
Project Page:
https://github.com/ebirger/netpen.git
Source