From 745aae4cfd248bc0ec4199c6528304df3a6e68f5 Mon Sep 17 00:00:00 2001 From: Matthias Frei Date: Wed, 15 Sep 2021 17:49:56 +0200 Subject: [PATCH 1/2] Add minimal support for HSR configuration For the high-speed router (HSR) instances running in the SCIONLab infrastructure, we need a special configuration (.toml) and run a different systemd unit. Instead of adding the very specific configuration settings for the HSR to the coordinator DB, we just avoid emitting any configuration file for now, leaving this to the host provisioning (by ansible). So, if the HSR flag is set for a router, we only add this to the list of wanted systemd units, nothing else. --- scionlab/admin.py | 4 +- scionlab/fixtures/testdata.yaml | 20 + scionlab/fixtures/testtopo.py | 16 +- scionlab/migrations/0002_hsr.py | 23 + scionlab/models/core.py | 26 +- scionlab/scion/config.py | 25 +- .../tests/data/test_config_tar/host_5.yml | 560 ++++++++++++++++++ scionlab/tests/test_config_tar.py | 6 +- 8 files changed, 661 insertions(+), 19 deletions(-) create mode 100644 scionlab/migrations/0002_hsr.py create mode 100644 scionlab/tests/data/test_config_tar/host_5.yml diff --git a/scionlab/admin.py b/scionlab/admin.py index 600a9fbe1..3fd422111 100644 --- a/scionlab/admin.py +++ b/scionlab/admin.py @@ -301,11 +301,13 @@ class BorderRouterAdminForm(_CreateUpdateModelForm): def create(self): return BorderRouter.objects.create( host=self.cleaned_data['host'], + is_hsr=self.cleaned_data['is_hsr'], ) def update(self): self.instance.update( host=self.cleaned_data['host'], + is_hsr=self.cleaned_data['is_hsr'], ) @@ -313,7 +315,7 @@ class BorderRouterInline(admin.TabularInline): model = BorderRouter extra = 0 form = BorderRouterAdminForm - fields = ('host',) + fields = ('host', 'is_hsr') def formfield_for_foreignkey(self, db_field, request, **kwargs): if db_field.name == "host": diff --git a/scionlab/fixtures/testdata.yaml b/scionlab/fixtures/testdata.yaml index 09211eca2..28fb2670f 100644 --- a/scionlab/fixtures/testdata.yaml +++ b/scionlab/fixtures/testdata.yaml @@ -4525,101 +4525,121 @@ fields: AS: 1 host: 1 + is_hsr: false - model: scionlab.borderrouter pk: 2 fields: AS: 3 host: 3 + is_hsr: false - model: scionlab.borderrouter pk: 3 fields: AS: 2 host: 2 + is_hsr: false - model: scionlab.borderrouter pk: 4 fields: AS: 4 host: 4 + is_hsr: false - model: scionlab.borderrouter pk: 5 fields: AS: 5 host: 5 + is_hsr: true - model: scionlab.borderrouter pk: 6 fields: AS: 6 host: 6 + is_hsr: true - model: scionlab.borderrouter pk: 7 fields: AS: 7 host: 7 + is_hsr: false - model: scionlab.borderrouter pk: 8 fields: AS: 8 host: 8 + is_hsr: false - model: scionlab.borderrouter pk: 9 fields: AS: 9 host: 9 + is_hsr: false - model: scionlab.borderrouter pk: 10 fields: AS: 10 host: 10 + is_hsr: false - model: scionlab.borderrouter pk: 11 fields: AS: 11 host: 11 + is_hsr: false - model: scionlab.borderrouter pk: 12 fields: AS: 12 host: 12 + is_hsr: false - model: scionlab.borderrouter pk: 13 fields: AS: 13 host: 13 + is_hsr: false - model: scionlab.borderrouter pk: 14 fields: AS: 14 host: 14 + is_hsr: false - model: scionlab.borderrouter pk: 15 fields: AS: 15 host: 15 + is_hsr: false - model: scionlab.borderrouter pk: 16 fields: AS: 16 host: 16 + is_hsr: false - model: scionlab.borderrouter pk: 18 fields: AS: 17 host: 17 + is_hsr: false - model: scionlab.borderrouter pk: 20 fields: AS: 18 host: 18 + is_hsr: false - model: scionlab.borderrouter pk: 22 fields: AS: 19 host: 19 + is_hsr: false - model: scionlab.borderrouter pk: 24 fields: AS: 20 host: 20 + is_hsr: false - model: scionlab.service pk: 1 fields: diff --git a/scionlab/fixtures/testtopo.py b/scionlab/fixtures/testtopo.py index b8ae28640..7970161d4 100644 --- a/scionlab/fixtures/testtopo.py +++ b/scionlab/fixtures/testtopo.py @@ -13,7 +13,7 @@ # limitations under the License. from collections import namedtuple -from scionlab.models.core import ISD, AS, Link, Host, Service +from scionlab.models.core import ISD, AS, Link, Host, Service, BorderRouter from scionlab.models.user_as import AttachmentPoint from scionlab.models.vpn import VPN @@ -110,6 +110,12 @@ def makeLinkDef(type, as_id_tail_a, as_id_tail_b): (_expand_as_id(0x1301), Service.SIG), ] +# Router instances (AS ID, router instance ID) with high-speed router configuration +hsrs = [ + (_expand_as_id(0x1301), 1), + (_expand_as_id(0x1302), 1), +] + # VPNs for APs, except 1303 vpns = [ VPNDef(_expand_as_id(0x1107), "10.0.8.1", 1194, "10.0.0.0/16"), # odd subnet, used in prod! @@ -124,6 +130,7 @@ def create_testtopo(): create_links() create_vpn() create_extraservices() + setup_hsrs() def create_isds(): @@ -156,6 +163,13 @@ def create_extraservices(): Service.objects.create(host=host, type=as_serv[1]) +def setup_hsrs(): + for as_id, brid in hsrs: + br = BorderRouter.objects.filter(AS__as_id=as_id)[brid-1] + br.is_hsr = True + br.save() + + def _create_as(isd_id, as_id, label, public_ip, is_core=False, is_ap=False): isd = ISD.objects.get(isd_id=isd_id) as_ = AS.objects.create_with_default_services( diff --git a/scionlab/migrations/0002_hsr.py b/scionlab/migrations/0002_hsr.py new file mode 100644 index 000000000..bb2dac321 --- /dev/null +++ b/scionlab/migrations/0002_hsr.py @@ -0,0 +1,23 @@ +# Generated by Django 3.2 on 2021-09-14 13:45 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scionlab', '0001_squashed_0011_pullap'), + ] + + operations = [ + migrations.AddField( + model_name='borderrouter', + name='is_hsr', + field=models.BooleanField(default=False, help_text='If true, this is a high-speed router instance with special configuration.'), + ), + migrations.AlterField( + model_name='service', + name='type', + field=models.CharField(choices=[('CS', 'Control Service'), ('SIG', 'SCION IP Gateway'), ('BW', 'Bandwidth tester server'), ('PP', 'Pingpong server')], max_length=16), + ), + ] diff --git a/scionlab/models/core.py b/scionlab/models/core.py index 6b0cb88d7..f70201040 100644 --- a/scionlab/models/core.py +++ b/scionlab/models/core.py @@ -1009,10 +1009,11 @@ def get_interface_b(self): class BorderRouterManager(models.Manager): - def create(self, host): + def create(self, host, is_hsr=False): """ Create a BorderRouter object. :param Host host: the host, defines the AS + :param bool is_hsr: this is a high-speed router instance :returns: BorderRouter """ host.AS.hosts.bump_config() @@ -1020,15 +1021,17 @@ def create(self, host): return super().create( AS=host.AS, host=host, + is_hsr=is_hsr, ) - def first_or_create(self, host): + def first_or_create(self, host, is_hsr=False): """ Get the first border router related to this host, or create a new one with default settings. :param Host host: the host, defines the AS + :param bool is_hsr: this is a high-speed router instance :returns: BorderRouter """ - return host.border_routers.first() or self.create(host=host) + return host.border_routers.first() or self.create(host=host, is_hsr=is_hsr) def iterator_non_empty(self): """ @@ -1053,6 +1056,10 @@ class BorderRouter(models.Model): related_name='border_routers', on_delete=models.CASCADE ) + is_hsr = models.BooleanField( + default=False, + help_text="If true, this is a high-speed router instance with special configuration." + ) objects = BorderRouterManager() @@ -1094,12 +1101,14 @@ def internal_port(self): def metrics_port(self): return BR_METRICS_PORT_BASE + self.instance_id - def update(self, host=_placeholder): + def update(self, host=_placeholder, is_hsr=_placeholder): """ Update the given fields :param Host host: optional, the host. Must be in current AS. + :param bool is_hsr: optional, this is a high-speed router instance """ prev_host = self.host + prev_is_hsr = self.is_hsr if host is not _placeholder: if host.AS != self.AS: @@ -1108,10 +1117,15 @@ def update(self, host=_placeholder): raise RuntimeError('BorderRouter.update cannot change AS') self.host = host + if is_hsr is not _placeholder: + self.is_hsr = is_hsr + self.save() - if host != prev_host: - host.AS.hosts.bump_config() + if self.host != prev_host: + self.AS.hosts.bump_config() + elif self.is_hsr != prev_is_hsr: + self.host.bump_config() class ServiceManager(models.Manager): diff --git a/scionlab/scion/config.py b/scionlab/scion/config.py index 0756f1b02..f0e967905 100644 --- a/scionlab/scion/config.py +++ b/scionlab/scion/config.py @@ -44,7 +44,6 @@ SERVICES_TO_SYSTEMD_NAMES = { Service.CS: 'scion-control-service', Service.BW: 'scion-bwtestserver', - TYPE_BR: 'scion-border-router', } DEFAULT_ENV = ['TZ=UTC'] @@ -97,8 +96,9 @@ def _write_as_config(self, cb: '_ConfigBuilder'): config_dir = cb.config_dir.lstrip('/') # don't use absolute paths in the archive for router in self._routers(): - self.archive.write_toml((config_dir, f'{router.instance_name}.toml'), - cb.build_br_conf(router)) + if not router.is_hsr: + self.archive.write_toml((config_dir, f'{router.instance_name}.toml'), + cb.build_br_conf(router)) for service in self._control_services(): assert service.type == Service.CS @@ -166,7 +166,11 @@ def generate(self): # dispatcher and sciond config files are installed with the package def systemd_units(self): - units = ["scion-border-router@%s.service" % router.instance_name + router_systemd_name = { + False: 'scion-border-router', + True: 'scion-hsr', + } + units = ["%s@%s.service" % (router_systemd_name[router.is_hsr], router.instance_name) for router in self._routers()] units += ["%s@%s.service" % (SERVICES_TO_SYSTEMD_NAMES[service.type], service.instance_name) for service in self._control_services()] @@ -205,12 +209,13 @@ def _cmd(binary_name, config_dir, config_file): as_dir = self._as_dir() config = configparser.ConfigParser() for router in self._routers(): - _add_supervisord_program_conf( - config, - router.instance_name, - _cmd(CMDS[TYPE_BR], as_dir, router.instance_name + '.toml'), - env=BORDER_ENV - ) + if not router.is_hsr: + _add_supervisord_program_conf( + config, + router.instance_name, + _cmd(CMDS[TYPE_BR], as_dir, router.instance_name + '.toml'), + env=BORDER_ENV + ) for service in self._control_services(): _add_supervisord_program_conf( config, diff --git a/scionlab/tests/data/test_config_tar/host_5.yml b/scionlab/tests/data/test_config_tar/host_5.yml new file mode 100644 index 000000000..06b938ebc --- /dev/null +++ b/scionlab/tests/data/test_config_tar/host_5.yml @@ -0,0 +1,560 @@ +etc/scion/beacon_policy.yaml: | + Filter: + AllowIsdLoop: false +etc/scion/certs/ISD17-B1-S1.trc: !!binary | + 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 + zi9R52BakPllb84= +etc/scion/certs/ISD19-B1-S1.trc: !!binary | + MIIXegYJKoZIhvcNAQcCoIIXazCCF2cCAQExDzANBglghkgBZQMEAgMFADCCEG8GCSqGSIb3DQEH + AaCCEGAEghBcMIIQWAIBADAJAgETAgEBAgEBMCIYDzIwMjEwMTIwMDYxNzM1WhgPMjAyMzAxMjAw + NjE3MzRaAgEAAQEAMAACAQIwGhMLZmZhYTowOjEzMDETC2ZmYWE6MDoxMzAyMBoTC2ZmYWE6MDox + MzAxEwtmZmFhOjA6MTMwMgwXU0NJT05MYWIgVFJDIGZvciBJU0QgMTkwgg/GMIICkTCCAjegAwIB + AgIUI9zYNq8776t5MVxBaZyGLD0TABQwCgYIKoZIzj0EAwQwgaUxCzAJBgNVBAYTAkNIMQswCQYD + VQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEPMA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRz + ZWMxNDAyBgNVBAMMKzE5LWZmYWE6MDoxMzAxIFNlbnNpdGl2ZSBWb3RpbmcgQ2VydGlmaWNhdGUx + HzAdBgsrBgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwHhcNMjEwMTIwMDYxNzM0WhcNMjMwMTIw + MDYxNzM0WjCBpTELMAkGA1UEBhMCQ0gxCzAJBgNVBAgMAlpIMRAwDgYDVQQHDAdaw7xyaWNoMQ8w + DQYDVQQKDAZOZXRzZWMxDzANBgNVBAsMBk5ldHNlYzE0MDIGA1UEAwwrMTktZmZhYTowOjEzMDEg + U2Vuc2l0aXZlIFZvdGluZyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4xOS1mZmFhOjA6 + MTMwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABLytiyH57q+deo4/K7K/iAk6G0oiddX3MfJP + UH206Ifdm/SdEJO74w1ebVAvTxdQ1x7V6+t3gdjahWZ75RlfYmejQzBBMB0GA1UdDgQWBBQA7qta + irSh56ZViTmLRLEByx7e6DAgBgNVHSUEGTAXBgsrBgEEAYOwHAEDAQYIKwYBBQUHAwgwCgYIKoZI + zj0EAwQDSAAwRQIhAJI9XtLYjD+c7IYZ2Zs2uAw7pfhukCDR1P+CJbieOFRHAiAwbPXRm8G5zuXh + f4I57HnIS1arXhZgn28S8m4Q2XypBjCCAo0wggIzoAMCAQICFD8np5z+Vgn7Actp+HV9oo3dTvXw + MAoGCCqGSM49BAMEMIGjMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJp + Y2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMTIwMAYDVQQDDCkxOS1mZmFhOjA6 + MTMwMSBSZWd1bGFyIFZvdGluZyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4xOS1mZmFh + OjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAxMjAwNjE3MzRaMIGjMQswCQYDVQQGEwJDSDEL + MAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwG + TmV0c2VjMTIwMAYDVQQDDCkxOS1mZmFhOjA6MTMwMSBSZWd1bGFyIFZvdGluZyBDZXJ0aWZpY2F0 + ZTEfMB0GCysGAQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH + A0IABOnlzOd4sB3UWfgrIa0llCz0JMtvtYkCFUeVOUFTTTUaYQPHqMcZdMSBCNAFx+NaK2SkJyoc + R3JA+N1GELbz0r2jQzBBMB0GA1UdDgQWBBSleUU91NqRnFKrjZPBgXbHbK56JzAgBgNVHSUEGTAX + BgsrBgEEAYOwHAEDAgYIKwYBBQUHAwgwCgYIKoZIzj0EAwQDSAAwRQIgCISfZI2qxBkPCK0eN0vx + Y5FiV55k8yXIydbBTJVhd8UCIQCjJ0+HRuC6pPTIiiT/MxB9RzWXM5wq1Rt3uNVByAfY9jCCArkw + ggJfoAMCAQICFDlt6m1pl0mYV+Uf9GY9Oon/BKHFMAoGCCqGSM49BAMEMIGnMQswCQYDVQQGEwJD + SDELMAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UE + CwwGTmV0c2VjMTYwNAYDVQQDDC0xOS1mZmFhOjA6MTMwMSBIaWdoIFNlY3VyaXR5IFJvb3QgQ2Vy + dGlmaWNhdGUxHzAdBgsrBgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwHhcNMjEwMTIwMDYxNzM0 + WhcNMjMwMTIwMDYxNzM0WjCBpzELMAkGA1UEBhMCQ0gxCzAJBgNVBAgMAlpIMRAwDgYDVQQHDAda + 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 + coX4ivOv8fqxhM9P5egUl7glAdTVPKmy6WtoAdM= +etc/scion/certs/ISD20-B1-S1.trc: !!binary | + MIIXewYJKoZIhvcNAQcCoIIXbDCCF2gCAQExDzANBglghkgBZQMEAgMFADCCEHAGCSqGSIb3DQEH + AaCCEGEEghBdMIIQWQIBADAJAgEUAgEBAgEBMCIYDzIwMjEwMTIwMDYxNzM2WhgPMjAyMzAxMjAw + NjE3MzVaAgEAAQEAMAACAQIwGhMLZmZhYTowOjE0MDETC2ZmYWE6MDoxNDAyMBoTC2ZmYWE6MDox + NDAxEwtmZmFhOjA6MTQwMgwXU0NJT05MYWIgVFJDIGZvciBJU0QgMjAwgg/HMIICkTCCAjegAwIB + AgIUBPv1Sp1nTT03+ksVBCTY97ZQ7ygwCgYIKoZIzj0EAwQwgaUxCzAJBgNVBAYTAkNIMQswCQYD + VQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEPMA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRz + ZWMxNDAyBgNVBAMMKzIwLWZmYWE6MDoxNDAxIFNlbnNpdGl2ZSBWb3RpbmcgQ2VydGlmaWNhdGUx + HzAdBgsrBgEEAYOwHAECAQwOMjAtZmZhYTowOjE0MDEwHhcNMjEwMTIwMDYxNzM1WhcNMjMwMTIw + MDYxNzM1WjCBpTELMAkGA1UEBhMCQ0gxCzAJBgNVBAgMAlpIMRAwDgYDVQQHDAdaw7xyaWNoMQ8w + DQYDVQQKDAZOZXRzZWMxDzANBgNVBAsMBk5ldHNlYzE0MDIGA1UEAwwrMjAtZmZhYTowOjE0MDEg + U2Vuc2l0aXZlIFZvdGluZyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4yMC1mZmFhOjA6 + MTQwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABElDZ+poZYyLgjupGHvTH5lvaOuVt5sc48Ej + ZUdgR1Tu9wjFvJq4ijx4AbVyPqb0ps3u2jGrkiE8ZYmy1ZJaUg+jQzBBMB0GA1UdDgQWBBTotGMw + UYHMJmn+Kv95vi9SiL4MIjAgBgNVHSUEGTAXBgsrBgEEAYOwHAEDAQYIKwYBBQUHAwgwCgYIKoZI + zj0EAwQDSAAwRQIgPie9cl7iBQdW0x6eabx/9jJk1rMss03blTaxhUkYkbcCIQCpzCSNR7blZNsk + NjMTe3sLL06kbeoQAjBfxteQTBo4bDCCAowwggIzoAMCAQICFC+r3K1jh0JQsG0Igxxx+caTI2nv + MAoGCCqGSM49BAMEMIGjMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJp + Y2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMTIwMAYDVQQDDCkyMC1mZmFhOjA6 + MTQwMSBSZWd1bGFyIFZvdGluZyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4yMC1mZmFh + OjA6MTQwMTAeFw0yMTAxMjAwNjE3MzVaFw0yMzAxMjAwNjE3MzVaMIGjMQswCQYDVQQGEwJDSDEL + MAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwG + TmV0c2VjMTIwMAYDVQQDDCkyMC1mZmFhOjA6MTQwMSBSZWd1bGFyIFZvdGluZyBDZXJ0aWZpY2F0 + ZTEfMB0GCysGAQQBg7AcAQIBDA4yMC1mZmFhOjA6MTQwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH + A0IABLLgta4+wWZsHo0VgDT0QUpm3fk9kx4YUKXfyVWSRgEiowPldm7AHAnitJVOXSxsDgrFvhgl + X2bAO61G2gH97qajQzBBMB0GA1UdDgQWBBS0iYeH8y15bE1hyK90lZwnca3KRTAgBgNVHSUEGTAX + BgsrBgEEAYOwHAEDAgYIKwYBBQUHAwgwCgYIKoZIzj0EAwQDRwAwRAIgPyC7rvmALXG47FH4zq5p + 0SfQlEdXKTrlhVU8k418N5YCIA1ztsnuqN8Cnr7i+ZGzi/j8bBE1b2tLoZQEw3gxEAmQMIICuDCC + Al6gAwIBAgITYA95f2tNdBu+BVUB8kKLoKH3ODAKBggqhkjOPQQDBDCBpzELMAkGA1UEBhMCQ0gx + CzAJBgNVBAgMAlpIMRAwDgYDVQQHDAdaw7xyaWNoMQ8wDQYDVQQKDAZOZXRzZWMxDzANBgNVBAsM + Bk5ldHNlYzE2MDQGA1UEAwwtMjAtZmZhYTowOjE0MDEgSGlnaCBTZWN1cml0eSBSb290IENlcnRp + ZmljYXRlMR8wHQYLKwYBBAGDsBwBAgEMDjIwLWZmYWE6MDoxNDAxMB4XDTIxMDEyMDA2MTczNVoX + DTIzMDEyMDA2MTczNVowgacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8 + 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 +etc/scion/crypto/as/ISD19-ASffaa_0_1301.pem: | + -----BEGIN CERTIFICATE----- + MIICtTCCAlqgAwIBAgIUB6Vq9fiG79Al3KFEb4R5Z0vUdoYwCgYIKoZIzj0EAwQw + gZ4xCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxLTArBgNVBAMMJDE5LWZm + YWE6MDoxMzAxIFNlY3VyZSBDQSBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIB + DA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMjAxMjAwNjE3MzRa + MIGXMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJpY2gx + DzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMSYwJAYDVQQDDB0xOS1m + ZmFhOjA6MTMwMSBBUyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4xOS1m + ZmFhOjA6MTMwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBHqM3GCaLeG9iME + hlNj8M1/vO/I7ee1vlS98vcl4Vxq/KkVT00E3vP/uhDquTdylUqgqG2YuRfp+vNE + wkXGjrSjezB5MA4GA1UdDwEB/wQEAwIHgDAdBgNVHQ4EFgQUfDgvpiShuf2brvWa + Y8igqDNudygwHwYDVR0jBBgwFoAUwO4gjrC2dn5TW8qYdhERzfEFEP0wJwYDVR0l + BCAwHgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDCDAKBggqhkjOPQQDBANJ + ADBGAiEA4WCXjX/7ETAmBE3Gx5vjp/mYZitsSotA6ctvYsy7KWUCIQCryH0/jIqm + 3iilvB5KLXkO2zNVcpLnFZq3G849RLKf1g== + -----END CERTIFICATE----- + -----BEGIN CERTIFICATE----- + MIICrzCCAlWgAwIBAgIUA0DPiieK4OmaTz0tvaHKVS5CAOAwCgYIKoZIzj0EAwQw + gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm + YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG + AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx + MjAwNjE3MzRaMIGeMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM + B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMS0wKwYD + VQQDDCQxOS1mZmFhOjA6MTMwMSBTZWN1cmUgQ0EgQ2VydGlmaWNhdGUxHzAdBgsr + BgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3oN37lDIWmbEg9pV2SBZsC0IwWk4dZ + mkWHZEXJck3W72wM3XgR93Q1pdWRo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMA4G + A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUwO4gjrC2dn5TW8qYdhERzfEFEP0wHwYD + VR0jBBgwFoAUyoD4EOY/44uATdQ4XHJLI2W0aRcwCgYIKoZIzj0EAwQDSAAwRQIg + KELIf8zG2I6tzpDAKbumJNfc0JovN6GzIMR7R9ZkCUsCIQDqAFOmZK8dmemv26Jn + w2J4s6FTYk2h1kq+ifuUdPwSog== + -----END CERTIFICATE----- +etc/scion/crypto/as/cp-as.key: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg951gAoaL6KE72fu4 + xHwPbDgc19Jcfs0bM93Dn+rQfm2hRANCAAQR6jNxgmi3hvYjBIZTY/DNf7zvyO3n + tb5UvfL3JeFcavypFU9NBN7z/7oQ6rk3cpVKoKhtmLkX6frzRMJFxo60 + -----END PRIVATE KEY----- +etc/scion/crypto/ca/ISD19-ASffaa_0_1301.ca.crt: | + -----BEGIN CERTIFICATE----- + MIICrzCCAlWgAwIBAgIUA0DPiieK4OmaTz0tvaHKVS5CAOAwCgYIKoZIzj0EAwQw + gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm + YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG + AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx + MjAwNjE3MzRaMIGeMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM + B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMS0wKwYD + VQQDDCQxOS1mZmFhOjA6MTMwMSBTZWN1cmUgQ0EgQ2VydGlmaWNhdGUxHzAdBgsr + BgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3oN37lDIWmbEg9pV2SBZsC0IwWk4dZ + mkWHZEXJck3W72wM3XgR93Q1pdWRo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMA4G + A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUwO4gjrC2dn5TW8qYdhERzfEFEP0wHwYD + VR0jBBgwFoAUyoD4EOY/44uATdQ4XHJLI2W0aRcwCgYIKoZIzj0EAwQDSAAwRQIg + KELIf8zG2I6tzpDAKbumJNfc0JovN6GzIMR7R9ZkCUsCIQDqAFOmZK8dmemv26Jn + w2J4s6FTYk2h1kq+ifuUdPwSog== + -----END CERTIFICATE----- +etc/scion/crypto/ca/ISD19-ASffaa_0_1301.root.crt: | + -----BEGIN CERTIFICATE----- + MIICuTCCAl+gAwIBAgIUOW3qbWmXSZhX5R/0Zj06if8EocUwCgYIKoZIzj0EAwQw + gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm + YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG + AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx + MjAwNjE3MzRaMIGnMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM + B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMTYwNAYD + VQQDDC0xOS1mZmFhOjA6MTMwMSBIaWdoIFNlY3VyaXR5IFJvb3QgQ2VydGlmaWNh + dGUxHzAdBgsrBgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIB + BggqhkjOPQMBBwNCAAQgtMe+7XvgKqdzKyz5s+vtNb7Oh+YY+JUXFrOAhnO4N8Gw + 8h/BLahH+D7WvgbiBnb0U7yUY8y8dxfFfVQKZdvDo2cwZTASBgNVHRMBAf8ECDAG + AQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUyoD4EOY/44uATdQ4XHJL + I2W0aRcwIAYDVR0lBBkwFwYLKwYBBAGDsBwBAwMGCCsGAQUFBwMIMAoGCCqGSM49 + BAMEA0gAMEUCIFvgsGVN31x92Br1lJjVH6mVjPmT/YOo7rJ+FPP1TguqAiEA5QhS + w5NcCzU1cx+rIgdPWY3a5zQWuglSGJR3ZGq8gxg= + -----END CERTIFICATE----- +etc/scion/crypto/ca/cp-ca.key: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg2JyyCsq7yT9W8t9z + 9RutfZcn4VJYYDDhc3oPR64L3CehRANCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3o + N37lDIWmbEg9pV2SBZsC0IwWk4dZmkWHZEXJck3W72wM3XgR93Q1pdWR + -----END PRIVATE KEY----- +etc/scion/crypto/ca/cp-root.key: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgraHoVKYFRHAKup8J + epOZt43x+YY3pb3jzqkYcagttKmhRANCAAQgtMe+7XvgKqdzKyz5s+vtNb7Oh+YY + +JUXFrOAhnO4N8Gw8h/BLahH+D7WvgbiBnb0U7yUY8y8dxfFfVQKZdvD + -----END PRIVATE KEY----- +etc/scion/crypto/voting/ISD19-ASffaa_0_1301.regular.crt: | + -----BEGIN CERTIFICATE----- + MIICjTCCAjOgAwIBAgIUPyennP5WCfsBy2n4dX2ijd1O9fAwCgYIKoZIzj0EAwQw + gaMxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxMjAwBgNVBAMMKTE5LWZm + YWE6MDoxMzAxIFJlZ3VsYXIgVm90aW5nIENlcnRpZmljYXRlMR8wHQYLKwYBBAGD + sBwBAgEMDjE5LWZmYWE6MDoxMzAxMB4XDTIxMDEyMDA2MTczNFoXDTIzMDEyMDA2 + MTczNFowgaMxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8 + cmljaDEPMA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxMjAwBgNVBAMM + KTE5LWZmYWE6MDoxMzAxIFJlZ3VsYXIgVm90aW5nIENlcnRpZmljYXRlMR8wHQYL + KwYBBAGDsBwBAgEMDjE5LWZmYWE6MDoxMzAxMFkwEwYHKoZIzj0CAQYIKoZIzj0D + AQcDQgAE6eXM53iwHdRZ+CshrSWULPQky2+1iQIVR5U5QVNNNRphA8eoxxl0xIEI + 0AXH41orZKQnKhxHckD43UYQtvPSvaNDMEEwHQYDVR0OBBYEFKV5RT3U2pGcUquN + k8GBdsdsrnonMCAGA1UdJQQZMBcGCysGAQQBg7AcAQMCBggrBgEFBQcDCDAKBggq + hkjOPQQDBANIADBFAiAIhJ9kjarEGQ8IrR43S/FjkWJXnmTzJcjJ1sFMlWF3xQIh + AKMnT4dG4Lqk9MiKJP8zEH1HNZcznCrVG3e41UHIB9j2 + -----END CERTIFICATE----- +etc/scion/crypto/voting/ISD19-ASffaa_0_1301.sensitive.crt: | + -----BEGIN CERTIFICATE----- + MIICkTCCAjegAwIBAgIUI9zYNq8776t5MVxBaZyGLD0TABQwCgYIKoZIzj0EAwQw + gaUxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNDAyBgNVBAMMKzE5LWZm + YWE6MDoxMzAxIFNlbnNpdGl2ZSBWb3RpbmcgQ2VydGlmaWNhdGUxHzAdBgsrBgEE + AYOwHAECAQwOMTktZmZhYTowOjEzMDEwHhcNMjEwMTIwMDYxNzM0WhcNMjMwMTIw + MDYxNzM0WjCBpTELMAkGA1UEBhMCQ0gxCzAJBgNVBAgMAlpIMRAwDgYDVQQHDAda + w7xyaWNoMQ8wDQYDVQQKDAZOZXRzZWMxDzANBgNVBAsMBk5ldHNlYzE0MDIGA1UE + AwwrMTktZmZhYTowOjEzMDEgU2Vuc2l0aXZlIFZvdGluZyBDZXJ0aWZpY2F0ZTEf + MB0GCysGAQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTBZMBMGByqGSM49AgEGCCqG + SM49AwEHA0IABLytiyH57q+deo4/K7K/iAk6G0oiddX3MfJPUH206Ifdm/SdEJO7 + 4w1ebVAvTxdQ1x7V6+t3gdjahWZ75RlfYmejQzBBMB0GA1UdDgQWBBQA7qtairSh + 56ZViTmLRLEByx7e6DAgBgNVHSUEGTAXBgsrBgEEAYOwHAEDAQYIKwYBBQUHAwgw + CgYIKoZIzj0EAwQDSAAwRQIhAJI9XtLYjD+c7IYZ2Zs2uAw7pfhukCDR1P+CJbie + OFRHAiAwbPXRm8G5zuXhf4I57HnIS1arXhZgn28S8m4Q2XypBg== + -----END CERTIFICATE----- +etc/scion/crypto/voting/regular-voting.key: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgn3SZASo1E57RoIxD + hzRplEdkP7RafxFYCiv9nyxoqgChRANCAATp5czneLAd1Fn4KyGtJZQs9CTLb7WJ + AhVHlTlBU001GmEDx6jHGXTEgQjQBcfjWitkpCcqHEdyQPjdRhC289K9 + -----END PRIVATE KEY----- +etc/scion/crypto/voting/sensitive-voting.key: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgkNOYCfBLdZFbxp+H + ghTOt4yVbNbevfgm2JTC9zAksLyhRANCAAS8rYsh+e6vnXqOPyuyv4gJOhtKInXV + 9zHyT1B9tOiH3Zv0nRCTu+MNXm1QL08XUNce1evrd4HY2oVme+UZX2Jn + -----END PRIVATE KEY----- +etc/scion/cs-1.toml: | + [beacon_db] + connection = "/var/lib/scion/cs-1.beacon.db" + + [beaconing] + origination_interval = "60s" + propagation_interval = "60s" + + [general] + config_dir = "/etc/scion" + id = "cs-1" + reconnect_to_dispatcher = true + + [metrics] + prometheus = "127.0.0.1:30454" + + [path_db] + connection = "/var/lib/scion/cs-1.path.db" + + [quic] + address = "127.0.0.1:30354" + + [trust_db] + connection = "/var/lib/scion/cs-1.trust.db" + + [beaconing.policies] + propagation = "/etc/scion/beacon_policy.yaml" + + [log.console] + level = "info" +etc/scion/keys/master0.key: |- + XyMfSNIoUlHO12qqVWFA3g== +etc/scion/keys/master1.key: |- + XyMfSNIoUlHO12qqVWFA3g== +etc/scion/topology.json: |- + { + "attributes": [ + "authoritative", + "core", + "issuing", + "voting" + ], + "border_routers": { + "br-1": { + "ctrl_addr": "127.0.0.1:30201", + "interfaces": { + "1": { + "bandwidth": 1000, + "isd_as": "19-ffaa:0:1302", + "link_to": "CORE", + "mtu": 1472, + "underlay": { + "public": "172.31.0.110:50000", + "remote": "192.0.2.32:50000" + } + }, + "2": { + "bandwidth": 1000, + "isd_as": "19-ffaa:0:1303", + "link_to": "CHILD", + "mtu": 1472, + "underlay": { + "public": "172.31.0.110:50001", + "remote": "172.31.0.111:50000" + } + }, + "3": { + "bandwidth": 1000, + "isd_as": "19-ffaa:0:1304", + "link_to": "CHILD", + "mtu": 1472, + "underlay": { + "public": "172.31.0.110:50002", + "remote": "192.0.2.34:50000" + } + }, + "4": { + "bandwidth": 1000, + "isd_as": "17-ffaa:0:1101", + "link_to": "CORE", + "mtu": 1472, + "underlay": { + "public": "172.31.0.110:50003", + "remote": "192.0.2.11:50001" + } + }, + "5": { + "bandwidth": 1000, + "isd_as": "20-ffaa:0:1401", + "link_to": "CORE", + "mtu": 1472, + "underlay": { + "public": "172.31.0.110:50004", + "remote": "172.31.0.113:50000" + } + } + }, + "internal_addr": "127.0.0.1:30001" + } + }, + "control_service": { + "cs-1": { + "addr": "127.0.0.1:30254" + } + }, + "discovery_service": { + "ds-1": { + "addr": "127.0.0.1:30254" + } + }, + "isd_as": "19-ffaa:0:1301", + "mtu": 1472, + "sigs": { + "sig-1": { + "ctrl_addr": "127.0.0.1:30256", + "data_addr": "127.0.0.1:30056" + } + } + } +scionlab-config.json: |- + { + "files": { + "etc/scion/beacon_policy.yaml": "90c69ea879ca52546774c3007e7d29104766fc07", + "etc/scion/certs/ISD17-B1-S1.trc": "6e20b26b9831223ff8557b88cf7e2a3a441619b0", + "etc/scion/certs/ISD19-B1-S1.trc": "b91dfb74d7f9d24d7cd81b53fdc2ffd820b1f46c", + "etc/scion/certs/ISD20-B1-S1.trc": "66a6da3efd14c19c51c88dacd3de1534caa9b92c", + "etc/scion/crypto/as/ISD19-ASffaa_0_1301.pem": "2f6d84b8fe4d13cf75a8a6a689cd4556151aecbd", + "etc/scion/crypto/as/cp-as.key": "b166ace120525163b09163da906599fe5bfb2c82", + "etc/scion/crypto/ca/ISD19-ASffaa_0_1301.ca.crt": "c54d2dc129f1121bfd0e53942bd345f85707adf2", + "etc/scion/crypto/ca/ISD19-ASffaa_0_1301.root.crt": "3a1ccd81e057b02ebfba99d78f4abb3dae496bc3", + "etc/scion/crypto/ca/cp-ca.key": "06fb00f155b6b656d627c6ffc55356c6801c7165", + "etc/scion/crypto/ca/cp-root.key": "7d48e7ad385f1aa87dd491cffa0e8d3dd0c9e8d4", + "etc/scion/crypto/voting/ISD19-ASffaa_0_1301.regular.crt": "79a8205a820ef993bd5708d695c51f8517f746e1", + "etc/scion/crypto/voting/ISD19-ASffaa_0_1301.sensitive.crt": "4cdb055c967fd1d85913a070bdf3d3cfcfd7f881", + "etc/scion/crypto/voting/regular-voting.key": "22fc85c70d76d1764a88152c03213ddbbebff17b", + "etc/scion/crypto/voting/sensitive-voting.key": "ce2d236b8f838cdb69e38adb68c8421855a14ccd", + "etc/scion/cs-1.toml": "47ad2499da3f424ae2e5632598f002efee1119c5", + "etc/scion/keys/master0.key": "988129da38750290870323c1d2fa7f7e3a83738d", + "etc/scion/keys/master1.key": "988129da38750290870323c1d2fa7f7e3a83738d", + "etc/scion/topology.json": "bb9bf4a2e74eb7473da214558830212f36886fb7" + }, + "host_id": "9b2eedd0a1bd41d59a6c3a37a0317024", + "host_secret": "e563ae76441a44b3b225cb26e569dc72", + "systemd_units": [ + "scion-hsr@br-1.service", + "scion-control-service@cs-1.service", + "scion-daemon.service", + "scion-dispatcher.service" + ], + "url": "http://localhost:8000", + "version": 10 + } diff --git a/scionlab/tests/test_config_tar.py b/scionlab/tests/test_config_tar.py index fed2c0bc0..499098448 100644 --- a/scionlab/tests/test_config_tar.py +++ b/scionlab/tests/test_config_tar.py @@ -20,7 +20,7 @@ from scionlab.config_tar import generate_host_config_tar, generate_user_as_config_tar from scionlab.fixtures.testuser import get_testuser_exbert -from scionlab.models.core import AS, Service +from scionlab.models.core import AS, BorderRouter, Service from scionlab.models.user_as import UserAS from scionlab.util.archive import DictWriter @@ -58,6 +58,10 @@ def test_host_extra_srv(self): extra_srv = Service.objects.filter(type__in=[Service.BW]).first() self._test_host(extra_srv.host) + def test_host_hsr(self): + hsr = BorderRouter.objects.filter(is_hsr=True).first() + self._test_host(hsr.host) + def _test_host(self, host): archive = DictWriter() generate_host_config_tar(host, archive) From fd0b40e9a6a4d50548e03ff7062107557215126f Mon Sep 17 00:00:00 2001 From: Matthias Frei Date: Wed, 15 Sep 2021 22:12:24 +0200 Subject: [PATCH 2/2] testtopo: pick different ASes for HSR Unlucky pick before, picked ASes that are used in integration tests (which do not work for HSR, as expected). --- scionlab/fixtures/testdata.yaml | 8 +- scionlab/fixtures/testtopo.py | 4 +- .../{host_5.yml => host_3.yml} | 247 ++++-------------- 3 files changed, 58 insertions(+), 201 deletions(-) rename scionlab/tests/data/test_config_tar/{host_5.yml => host_3.yml} (70%) diff --git a/scionlab/fixtures/testdata.yaml b/scionlab/fixtures/testdata.yaml index 28fb2670f..2541a6a04 100644 --- a/scionlab/fixtures/testdata.yaml +++ b/scionlab/fixtures/testdata.yaml @@ -4531,13 +4531,13 @@ fields: AS: 3 host: 3 - is_hsr: false + is_hsr: true - model: scionlab.borderrouter pk: 3 fields: AS: 2 host: 2 - is_hsr: false + is_hsr: true - model: scionlab.borderrouter pk: 4 fields: @@ -4549,13 +4549,13 @@ fields: AS: 5 host: 5 - is_hsr: true + is_hsr: false - model: scionlab.borderrouter pk: 6 fields: AS: 6 host: 6 - is_hsr: true + is_hsr: false - model: scionlab.borderrouter pk: 7 fields: diff --git a/scionlab/fixtures/testtopo.py b/scionlab/fixtures/testtopo.py index 7970161d4..0cee0c673 100644 --- a/scionlab/fixtures/testtopo.py +++ b/scionlab/fixtures/testtopo.py @@ -112,8 +112,8 @@ def makeLinkDef(type, as_id_tail_a, as_id_tail_b): # Router instances (AS ID, router instance ID) with high-speed router configuration hsrs = [ - (_expand_as_id(0x1301), 1), - (_expand_as_id(0x1302), 1), + (_expand_as_id(0x1102), 1), + (_expand_as_id(0x1103), 1), ] # VPNs for APs, except 1303 diff --git a/scionlab/tests/data/test_config_tar/host_5.yml b/scionlab/tests/data/test_config_tar/host_3.yml similarity index 70% rename from scionlab/tests/data/test_config_tar/host_5.yml rename to scionlab/tests/data/test_config_tar/host_3.yml index 06b938ebc..96b61acf3 100644 --- a/scionlab/tests/data/test_config_tar/host_5.yml +++ b/scionlab/tests/data/test_config_tar/host_3.yml @@ -271,148 +271,54 @@ etc/scion/certs/ISD20-B1-S1.trc: !!binary | UdKxrO7+q9qwWaOMvhTDYeNIncDZw0zVfwfAmdTBfxnvDrjlr99IgOOudpQACJSzTpQ7gNJbhjLk gDAKBggqhkjOPQQDBARIMEYCIQDGI3hBIFGOEDLVC9bWi6JtrnKN+YZ69aareSnemMsClAIhAIvs eEC7ybR0E16iwn0Le+WsbMBhj2y4ir2c1Sm92oSx -etc/scion/crypto/as/ISD19-ASffaa_0_1301.pem: | +etc/scion/crypto/as/ISD17-ASffaa_0_1103.pem: | -----BEGIN CERTIFICATE----- - MIICtTCCAlqgAwIBAgIUB6Vq9fiG79Al3KFEb4R5Z0vUdoYwCgYIKoZIzj0EAwQw + MIICtDCCAlqgAwIBAgIUFs0tWQh0LUE3YKgiUzjstVttGq0wCgYIKoZIzj0EAwQw gZ4xCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxLTArBgNVBAMMJDE5LWZm - YWE6MDoxMzAxIFNlY3VyZSBDQSBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIB - DA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMjAxMjAwNjE3MzRa + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxLTArBgNVBAMMJDE3LWZm + YWE6MDoxMTAxIFNlY3VyZSBDQSBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIB + DA4xNy1mZmFhOjA6MTEwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMjAxMjAwNjE3MzRa MIGXMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcMB1rDvHJpY2gx - DzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMSYwJAYDVQQDDB0xOS1m - ZmFhOjA6MTMwMSBBUyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4xOS1m - ZmFhOjA6MTMwMTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBHqM3GCaLeG9iME - hlNj8M1/vO/I7ee1vlS98vcl4Vxq/KkVT00E3vP/uhDquTdylUqgqG2YuRfp+vNE - wkXGjrSjezB5MA4GA1UdDwEB/wQEAwIHgDAdBgNVHQ4EFgQUfDgvpiShuf2brvWa - Y8igqDNudygwHwYDVR0jBBgwFoAUwO4gjrC2dn5TW8qYdhERzfEFEP0wJwYDVR0l - BCAwHgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDCDAKBggqhkjOPQQDBANJ - ADBGAiEA4WCXjX/7ETAmBE3Gx5vjp/mYZitsSotA6ctvYsy7KWUCIQCryH0/jIqm - 3iilvB5KLXkO2zNVcpLnFZq3G849RLKf1g== + DzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMSYwJAYDVQQDDB0xNy1m + ZmFhOjA6MTEwMyBBUyBDZXJ0aWZpY2F0ZTEfMB0GCysGAQQBg7AcAQIBDA4xNy1m + ZmFhOjA6MTEwMzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABHMaHE5uyt0BmSLK + NzAx2PSitjouXtMoqKxRYIdz3Fy+SUMdvXURSM/3yr6KN52fyhVdxcepWgmxC2B3 + 9Q5SUVajezB5MA4GA1UdDwEB/wQEAwIHgDAdBgNVHQ4EFgQU5d3EjacvraxhWm70 + NM1yooiLS94wHwYDVR0jBBgwFoAUMCDDfwjuyVXys7mhW7vYIfipKYUwJwYDVR0l + BCAwHgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDCDAKBggqhkjOPQQDBANI + ADBFAiBgE2xaAPuTBSt46WBYmP3v1apWoz3s6DFhXXUvmjecPQIhAMIRVO0VDN2J + J8w1QjCbuUVd2PEDPcTqQebJZzVeXxbS -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- - MIICrzCCAlWgAwIBAgIUA0DPiieK4OmaTz0tvaHKVS5CAOAwCgYIKoZIzj0EAwQw + MIICrzCCAlWgAwIBAgIUGpKYoG8xfR7c6BzjqULcY7aFW5EwCgYIKoZIzj0EAwQw gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm - YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG - AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx + MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE3LWZm + YWE6MDoxMTAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG + AQQBg7AcAQIBDA4xNy1mZmFhOjA6MTEwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx MjAwNjE3MzRaMIGeMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMS0wKwYD - VQQDDCQxOS1mZmFhOjA6MTMwMSBTZWN1cmUgQ0EgQ2VydGlmaWNhdGUxHzAdBgsr - BgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIBBggqhkjOPQMB - BwNCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3oN37lDIWmbEg9pV2SBZsC0IwWk4dZ - mkWHZEXJck3W72wM3XgR93Q1pdWRo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMA4G - A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUwO4gjrC2dn5TW8qYdhERzfEFEP0wHwYD - VR0jBBgwFoAUyoD4EOY/44uATdQ4XHJLI2W0aRcwCgYIKoZIzj0EAwQDSAAwRQIg - KELIf8zG2I6tzpDAKbumJNfc0JovN6GzIMR7R9ZkCUsCIQDqAFOmZK8dmemv26Jn - w2J4s6FTYk2h1kq+ifuUdPwSog== + VQQDDCQxNy1mZmFhOjA6MTEwMSBTZWN1cmUgQ0EgQ2VydGlmaWNhdGUxHzAdBgsr + BgEEAYOwHAECAQwOMTctZmZhYTowOjExMDEwWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAAS3d5PbxPo8kw2i7rJCukEuUH+48wQzYv+Hzkh3pgBlhraVrknlRIlRirLK + rViC+U41dQrPORJ8SBAFBUxmjfPTo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMA4G + A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUMCDDfwjuyVXys7mhW7vYIfipKYUwHwYD + VR0jBBgwFoAUAJ2V/qt+bqyUF3gls5Zn/3nt1aAwCgYIKoZIzj0EAwQDSAAwRQIh + AMZkNZixwA41VYQSbEFiY0uLMIgwRig3gKYmeloEzWlcAiAIeXNmWVXotSBQAX/A + PxtK8c90x+XlTWjwhFxWCwb/5Q== -----END CERTIFICATE----- etc/scion/crypto/as/cp-as.key: | -----BEGIN PRIVATE KEY----- - MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg951gAoaL6KE72fu4 - xHwPbDgc19Jcfs0bM93Dn+rQfm2hRANCAAQR6jNxgmi3hvYjBIZTY/DNf7zvyO3n - tb5UvfL3JeFcavypFU9NBN7z/7oQ6rk3cpVKoKhtmLkX6frzRMJFxo60 - -----END PRIVATE KEY----- -etc/scion/crypto/ca/ISD19-ASffaa_0_1301.ca.crt: | - -----BEGIN CERTIFICATE----- - MIICrzCCAlWgAwIBAgIUA0DPiieK4OmaTz0tvaHKVS5CAOAwCgYIKoZIzj0EAwQw - gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm - YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG - AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx - MjAwNjE3MzRaMIGeMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM - B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMS0wKwYD - VQQDDCQxOS1mZmFhOjA6MTMwMSBTZWN1cmUgQ0EgQ2VydGlmaWNhdGUxHzAdBgsr - BgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIBBggqhkjOPQMB - BwNCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3oN37lDIWmbEg9pV2SBZsC0IwWk4dZ - mkWHZEXJck3W72wM3XgR93Q1pdWRo2YwZDASBgNVHRMBAf8ECDAGAQH/AgEAMA4G - A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUwO4gjrC2dn5TW8qYdhERzfEFEP0wHwYD - VR0jBBgwFoAUyoD4EOY/44uATdQ4XHJLI2W0aRcwCgYIKoZIzj0EAwQDSAAwRQIg - KELIf8zG2I6tzpDAKbumJNfc0JovN6GzIMR7R9ZkCUsCIQDqAFOmZK8dmemv26Jn - w2J4s6FTYk2h1kq+ifuUdPwSog== - -----END CERTIFICATE----- -etc/scion/crypto/ca/ISD19-ASffaa_0_1301.root.crt: | - -----BEGIN CERTIFICATE----- - MIICuTCCAl+gAwIBAgIUOW3qbWmXSZhX5R/0Zj06if8EocUwCgYIKoZIzj0EAwQw - gacxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNjA0BgNVBAMMLTE5LWZm - YWE6MDoxMzAxIEhpZ2ggU2VjdXJpdHkgUm9vdCBDZXJ0aWZpY2F0ZTEfMB0GCysG - AQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTAeFw0yMTAxMjAwNjE3MzRaFw0yMzAx - MjAwNjE3MzRaMIGnMQswCQYDVQQGEwJDSDELMAkGA1UECAwCWkgxEDAOBgNVBAcM - B1rDvHJpY2gxDzANBgNVBAoMBk5ldHNlYzEPMA0GA1UECwwGTmV0c2VjMTYwNAYD - VQQDDC0xOS1mZmFhOjA6MTMwMSBIaWdoIFNlY3VyaXR5IFJvb3QgQ2VydGlmaWNh - dGUxHzAdBgsrBgEEAYOwHAECAQwOMTktZmZhYTowOjEzMDEwWTATBgcqhkjOPQIB - BggqhkjOPQMBBwNCAAQgtMe+7XvgKqdzKyz5s+vtNb7Oh+YY+JUXFrOAhnO4N8Gw - 8h/BLahH+D7WvgbiBnb0U7yUY8y8dxfFfVQKZdvDo2cwZTASBgNVHRMBAf8ECDAG - AQH/AgEBMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUyoD4EOY/44uATdQ4XHJL - I2W0aRcwIAYDVR0lBBkwFwYLKwYBBAGDsBwBAwMGCCsGAQUFBwMIMAoGCCqGSM49 - BAMEA0gAMEUCIFvgsGVN31x92Br1lJjVH6mVjPmT/YOo7rJ+FPP1TguqAiEA5QhS - w5NcCzU1cx+rIgdPWY3a5zQWuglSGJR3ZGq8gxg= - -----END CERTIFICATE----- -etc/scion/crypto/ca/cp-ca.key: | - -----BEGIN PRIVATE KEY----- - MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg2JyyCsq7yT9W8t9z - 9RutfZcn4VJYYDDhc3oPR64L3CehRANCAARIIKnRpsedzzSb0w+IbsKl6bz4Li3o - N37lDIWmbEg9pV2SBZsC0IwWk4dZmkWHZEXJck3W72wM3XgR93Q1pdWR - -----END PRIVATE KEY----- -etc/scion/crypto/ca/cp-root.key: | - -----BEGIN PRIVATE KEY----- - MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgraHoVKYFRHAKup8J - epOZt43x+YY3pb3jzqkYcagttKmhRANCAAQgtMe+7XvgKqdzKyz5s+vtNb7Oh+YY - +JUXFrOAhnO4N8Gw8h/BLahH+D7WvgbiBnb0U7yUY8y8dxfFfVQKZdvD - -----END PRIVATE KEY----- -etc/scion/crypto/voting/ISD19-ASffaa_0_1301.regular.crt: | - -----BEGIN CERTIFICATE----- - MIICjTCCAjOgAwIBAgIUPyennP5WCfsBy2n4dX2ijd1O9fAwCgYIKoZIzj0EAwQw - gaMxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxMjAwBgNVBAMMKTE5LWZm - YWE6MDoxMzAxIFJlZ3VsYXIgVm90aW5nIENlcnRpZmljYXRlMR8wHQYLKwYBBAGD - sBwBAgEMDjE5LWZmYWE6MDoxMzAxMB4XDTIxMDEyMDA2MTczNFoXDTIzMDEyMDA2 - MTczNFowgaMxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8 - cmljaDEPMA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxMjAwBgNVBAMM - KTE5LWZmYWE6MDoxMzAxIFJlZ3VsYXIgVm90aW5nIENlcnRpZmljYXRlMR8wHQYL - KwYBBAGDsBwBAgEMDjE5LWZmYWE6MDoxMzAxMFkwEwYHKoZIzj0CAQYIKoZIzj0D - AQcDQgAE6eXM53iwHdRZ+CshrSWULPQky2+1iQIVR5U5QVNNNRphA8eoxxl0xIEI - 0AXH41orZKQnKhxHckD43UYQtvPSvaNDMEEwHQYDVR0OBBYEFKV5RT3U2pGcUquN - k8GBdsdsrnonMCAGA1UdJQQZMBcGCysGAQQBg7AcAQMCBggrBgEFBQcDCDAKBggq - hkjOPQQDBANIADBFAiAIhJ9kjarEGQ8IrR43S/FjkWJXnmTzJcjJ1sFMlWF3xQIh - AKMnT4dG4Lqk9MiKJP8zEH1HNZcznCrVG3e41UHIB9j2 - -----END CERTIFICATE----- -etc/scion/crypto/voting/ISD19-ASffaa_0_1301.sensitive.crt: | - -----BEGIN CERTIFICATE----- - MIICkTCCAjegAwIBAgIUI9zYNq8776t5MVxBaZyGLD0TABQwCgYIKoZIzj0EAwQw - gaUxCzAJBgNVBAYTAkNIMQswCQYDVQQIDAJaSDEQMA4GA1UEBwwHWsO8cmljaDEP - MA0GA1UECgwGTmV0c2VjMQ8wDQYDVQQLDAZOZXRzZWMxNDAyBgNVBAMMKzE5LWZm - YWE6MDoxMzAxIFNlbnNpdGl2ZSBWb3RpbmcgQ2VydGlmaWNhdGUxHzAdBgsrBgEE - AYOwHAECAQwOMTktZmZhYTowOjEzMDEwHhcNMjEwMTIwMDYxNzM0WhcNMjMwMTIw - MDYxNzM0WjCBpTELMAkGA1UEBhMCQ0gxCzAJBgNVBAgMAlpIMRAwDgYDVQQHDAda - w7xyaWNoMQ8wDQYDVQQKDAZOZXRzZWMxDzANBgNVBAsMBk5ldHNlYzE0MDIGA1UE - AwwrMTktZmZhYTowOjEzMDEgU2Vuc2l0aXZlIFZvdGluZyBDZXJ0aWZpY2F0ZTEf - MB0GCysGAQQBg7AcAQIBDA4xOS1mZmFhOjA6MTMwMTBZMBMGByqGSM49AgEGCCqG - SM49AwEHA0IABLytiyH57q+deo4/K7K/iAk6G0oiddX3MfJPUH206Ifdm/SdEJO7 - 4w1ebVAvTxdQ1x7V6+t3gdjahWZ75RlfYmejQzBBMB0GA1UdDgQWBBQA7qtairSh - 56ZViTmLRLEByx7e6DAgBgNVHSUEGTAXBgsrBgEEAYOwHAEDAQYIKwYBBQUHAwgw - CgYIKoZIzj0EAwQDSAAwRQIhAJI9XtLYjD+c7IYZ2Zs2uAw7pfhukCDR1P+CJbie - OFRHAiAwbPXRm8G5zuXhf4I57HnIS1arXhZgn28S8m4Q2XypBg== - -----END CERTIFICATE----- -etc/scion/crypto/voting/regular-voting.key: | - -----BEGIN PRIVATE KEY----- - MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgn3SZASo1E57RoIxD - hzRplEdkP7RafxFYCiv9nyxoqgChRANCAATp5czneLAd1Fn4KyGtJZQs9CTLb7WJ - AhVHlTlBU001GmEDx6jHGXTEgQjQBcfjWitkpCcqHEdyQPjdRhC289K9 - -----END PRIVATE KEY----- -etc/scion/crypto/voting/sensitive-voting.key: | - -----BEGIN PRIVATE KEY----- - MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgkNOYCfBLdZFbxp+H - ghTOt4yVbNbevfgm2JTC9zAksLyhRANCAAS8rYsh+e6vnXqOPyuyv4gJOhtKInXV - 9zHyT1B9tOiH3Zv0nRCTu+MNXm1QL08XUNce1evrd4HY2oVme+UZX2Jn + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgIJLgxEVZ1rqr/5D8 + rqBVkPwk6F5UFRP4LCtz8uI0QkShRANCAARzGhxObsrdAZkiyjcwMdj0orY6Ll7T + KKisUWCHc9xcvklDHb11EUjP98q+ijedn8oVXcXHqVoJsQtgd/UOUlFW -----END PRIVATE KEY----- etc/scion/cs-1.toml: | [beacon_db] connection = "/var/lib/scion/cs-1.beacon.db" [beaconing] - origination_interval = "60s" - propagation_interval = "60s" + origination_interval = "5s" + propagation_interval = "5s" [general] config_dir = "/etc/scion" @@ -437,69 +343,34 @@ etc/scion/cs-1.toml: | [log.console] level = "info" etc/scion/keys/master0.key: |- - XyMfSNIoUlHO12qqVWFA3g== + F/vGGh+49IFjSw8+vZqe6w== etc/scion/keys/master1.key: |- - XyMfSNIoUlHO12qqVWFA3g== + F/vGGh+49IFjSw8+vZqe6w== etc/scion/topology.json: |- { - "attributes": [ - "authoritative", - "core", - "issuing", - "voting" - ], + "attributes": [], "border_routers": { "br-1": { "ctrl_addr": "127.0.0.1:30201", "interfaces": { "1": { "bandwidth": 1000, - "isd_as": "19-ffaa:0:1302", - "link_to": "CORE", + "isd_as": "17-ffaa:0:1101", + "link_to": "PARENT", "mtu": 1472, "underlay": { - "public": "172.31.0.110:50000", - "remote": "192.0.2.32:50000" + "public": "192.0.2.13:50000", + "remote": "192.0.2.11:50000" } }, "2": { "bandwidth": 1000, - "isd_as": "19-ffaa:0:1303", - "link_to": "CHILD", - "mtu": 1472, - "underlay": { - "public": "172.31.0.110:50001", - "remote": "172.31.0.111:50000" - } - }, - "3": { - "bandwidth": 1000, - "isd_as": "19-ffaa:0:1304", + "isd_as": "17-ffaa:0:1102", "link_to": "CHILD", "mtu": 1472, "underlay": { - "public": "172.31.0.110:50002", - "remote": "192.0.2.34:50000" - } - }, - "4": { - "bandwidth": 1000, - "isd_as": "17-ffaa:0:1101", - "link_to": "CORE", - "mtu": 1472, - "underlay": { - "public": "172.31.0.110:50003", - "remote": "192.0.2.11:50001" - } - }, - "5": { - "bandwidth": 1000, - "isd_as": "20-ffaa:0:1401", - "link_to": "CORE", - "mtu": 1472, - "underlay": { - "public": "172.31.0.110:50004", - "remote": "172.31.0.113:50000" + "public": "192.0.2.13:50001", + "remote": "192.0.2.12:50000" } } }, @@ -516,14 +387,8 @@ etc/scion/topology.json: |- "addr": "127.0.0.1:30254" } }, - "isd_as": "19-ffaa:0:1301", - "mtu": 1472, - "sigs": { - "sig-1": { - "ctrl_addr": "127.0.0.1:30256", - "data_addr": "127.0.0.1:30056" - } - } + "isd_as": "17-ffaa:0:1103", + "mtu": 1472 } scionlab-config.json: |- { @@ -532,23 +397,15 @@ scionlab-config.json: |- "etc/scion/certs/ISD17-B1-S1.trc": "6e20b26b9831223ff8557b88cf7e2a3a441619b0", "etc/scion/certs/ISD19-B1-S1.trc": "b91dfb74d7f9d24d7cd81b53fdc2ffd820b1f46c", "etc/scion/certs/ISD20-B1-S1.trc": "66a6da3efd14c19c51c88dacd3de1534caa9b92c", - "etc/scion/crypto/as/ISD19-ASffaa_0_1301.pem": "2f6d84b8fe4d13cf75a8a6a689cd4556151aecbd", - "etc/scion/crypto/as/cp-as.key": "b166ace120525163b09163da906599fe5bfb2c82", - "etc/scion/crypto/ca/ISD19-ASffaa_0_1301.ca.crt": "c54d2dc129f1121bfd0e53942bd345f85707adf2", - "etc/scion/crypto/ca/ISD19-ASffaa_0_1301.root.crt": "3a1ccd81e057b02ebfba99d78f4abb3dae496bc3", - "etc/scion/crypto/ca/cp-ca.key": "06fb00f155b6b656d627c6ffc55356c6801c7165", - "etc/scion/crypto/ca/cp-root.key": "7d48e7ad385f1aa87dd491cffa0e8d3dd0c9e8d4", - "etc/scion/crypto/voting/ISD19-ASffaa_0_1301.regular.crt": "79a8205a820ef993bd5708d695c51f8517f746e1", - "etc/scion/crypto/voting/ISD19-ASffaa_0_1301.sensitive.crt": "4cdb055c967fd1d85913a070bdf3d3cfcfd7f881", - "etc/scion/crypto/voting/regular-voting.key": "22fc85c70d76d1764a88152c03213ddbbebff17b", - "etc/scion/crypto/voting/sensitive-voting.key": "ce2d236b8f838cdb69e38adb68c8421855a14ccd", - "etc/scion/cs-1.toml": "47ad2499da3f424ae2e5632598f002efee1119c5", - "etc/scion/keys/master0.key": "988129da38750290870323c1d2fa7f7e3a83738d", - "etc/scion/keys/master1.key": "988129da38750290870323c1d2fa7f7e3a83738d", - "etc/scion/topology.json": "bb9bf4a2e74eb7473da214558830212f36886fb7" + "etc/scion/crypto/as/ISD17-ASffaa_0_1103.pem": "ef840f8bda9a0d44b46cf1d880c667f0cbbdc017", + "etc/scion/crypto/as/cp-as.key": "74abf7e5596b9b790e0c6f6ec6c64f72ebc25ed1", + "etc/scion/cs-1.toml": "84467cd10682d975caeccba3a7eaaec1bd9ea858", + "etc/scion/keys/master0.key": "1da16f862afe030b5442d93d91c7226ab3185e2e", + "etc/scion/keys/master1.key": "1da16f862afe030b5442d93d91c7226ab3185e2e", + "etc/scion/topology.json": "3fa174c3e24a5efd6d51e2c31584ab3b21bdd6a1" }, - "host_id": "9b2eedd0a1bd41d59a6c3a37a0317024", - "host_secret": "e563ae76441a44b3b225cb26e569dc72", + "host_id": "7b113599307b4c078bb58efda2dfb734", + "host_secret": "d8ae8eb8a08f4ff5af7f604e593e58a8", "systemd_units": [ "scion-hsr@br-1.service", "scion-control-service@cs-1.service", @@ -556,5 +413,5 @@ scionlab-config.json: |- "scion-dispatcher.service" ], "url": "http://localhost:8000", - "version": 10 + "version": 6 }