# SPDX-FileCopyrightText: 2020 Luke Granger-Brown # # SPDX-License-Identifier: Apache-2.0 { depot, lib, pkgs, config, ... }: let inherit (depot.ops) secrets; machineSecrets = secrets.machineSpecific.frantech-nyc01; in { imports = [ ../lib/frantech.nix ../lib/bgp.nix ]; networking = { hostName = "frantech-nyc01"; hostId = "251837df"; defaultGateway.address = "199.195.254.1"; defaultGateway6.address = "2605:6400:10::1"; interfaces.ens3 = { ipv4.addresses = [{ address = "199.195.254.60"; prefixLength = 24; }]; ipv6.addresses = [{ address = "2605:6400:10:c77::1"; prefixLength = 48; }]; }; }; my.ip.tailscale = "100.99.236.25"; services.lukegbgp = let local = { asn = 205479; }; in { enable = true; config = { local = { routerID = "199.195.254.60"; }; export = { #v4 = ["92.118.29.0/24"]; }; peering = { frantech = { local = local // { v4 = "199.195.254.60"; v6 = "2605:6400:10:c77::1"; }; remote = { asn = 53667; export_community = 4000; routers = [{ v4 = "169.254.169.179"; v6 = "2605:6400:ffff::2"; multihop = 2; password = machineSecrets.bgpPassword; }]; }; }; }; }; }; system.stateVersion = "21.05"; }