Home|Stats|RSS
Status|Hydra|SSO

AS10779

· 297 words · 2 min read

This is a small network, no external services will be provided.

You can find more information about our network on Hurricane Electric BGP Toolkit.

Peering

Peering (PeeringDB) is open to anyone meeting following criteria:

Nix + Bird2

Since nixpkgs has Bird2 options, it's relatively simple to make a config that can be reused for multiple peers:

{ ... }:

{
  services.bird2.config =
    let
      peer = [
        {
          name = "<Peer Name>";
          asn = "<Peer ASN>";
          ipv4 = "<Peer IPv4>";
          ipv6 = "<Peer IPv6>";
          multihop = "<Multihop>";
          password = "<BGP Password>";
        }
        { ... }
      ];
    in
    ''
      ${lib.concatMapStringsSep "\n" (p: ''
        protocol bgp ${p.name}4 {
          // own ipv4, asn
          graceful restart on;
          multihop ${p.multihop};
          neighbor ${p.ipv4}
          as ${p.asn};
          password "${p.password}";
          ipv4 {
            import filter {
              // import filters
              accept;
            };
            export filter {
              // export filters
              accept;
            };
          };
        }
      '') peer}

      ${lib.concatMapStringsSep "\n" (p: ''
        protocol bgp ${p.name}6 {
          // own ipv6, asn
          graceful restart on;
          multihop ${p.multihop};
          neighbor ${p.ipv6}
          as ${p.asn};
          password "${p.password}";
          ipv6 {
            import filter {
              // import filters
              accept;
            };
            export filter {
              // export filters
              accept;
            };
          };
        }
      '') peer}
    '';
}