lixonet-ee
This is the semi-official, testing Lixonet EE repository.
Custom configurations should be supplied in a lixonet.conf
file in the name=value
format, such as your subnet. Additionally, a tinc keypair is also be required.
Generating keypairs for tinc (tinc.key
):
Source: https://www.tinc-vpn.org/documentation/Generating-keypairs.html
Run: tincd -n lixonet -K
Configuration options
All options are supplied in the name=value
format on individual lines, i.e. name=test_name_lixo
name
- The global neighbor name. Tinc and Bird use this to identify a peer in the network, and to exclude your own pre-packed config automagically from BIRD so you don't connect to yourself over and over again.address
- The router address to use. This is your Lixonet routing layer address: 172.xxx.0.xxxasn
- The BGP ASN to use. We usually follow the format4206969XXX
where XXX is the last octet of youraddress
, zero-padded (i.e. 008 or 212)netmask
- The routing layer netmask to use. This should be255.255.255.0
in most cases as our routing layer has always been a ``/24` subnet. Used by Tinc and BIRD for the L2 mesh and route security ingress filtering respectively.tinc_bind_address
- OPTIONAL: The address that Tinc should bind to to listen for incoming WAN-sided connections (i.e. 10.0.0.1). This is not the tunnel IP.tinc_connect_to
- OPTIONAL: A comma-separated list of well-known/pre-defined hosts to connect to (i.e.denco_mane_lixo
). If not supplied, this is automatically set to all core routers.
Setup
Prerequisites:
- Docker is installed
eth0
is the LAN or WAN interface supporting external routing, DNS, etc.eth1
is the birdged interface to a router that will statically route the entire network subnettun
andtap
are in/etc/modules
to load at boot (https://www.cyberciti.biz/faq/linux-how-to-load-a-kernel-module-automatically-at-boot-time/)
Install:
- Clone this repository:
git clone
mkdir /etc/lixonet/
- Fill out
/etc/lixonet/lixonet.conf
(see: Configuration options) - Supply
/etc/lixonet/tinc.key
- Run
chmod +x build.sh && ./build.sh
to deploy the stack on Docker.
Description
Languages
Shell
96.6%
Dockerfile
3.4%