1{
2    "address_types": [
3        "ipv4",
4        "ipv6"
5    ],
6    "ipv4base": "10.0.0.0",
7    "ipv4mask": 24,
8    "ipv6base": "fd00::",
9    "ipv6mask": 64,
10    "link_ip_start": {
11        "ipv4": "10.0.0.0",
12        "v4mask": 24,
13        "ipv6": "fd00::",
14        "v6mask": 64
15    },
16    "lo_prefix": {
17        "ipv4": "1.0.",
18        "v4mask": 32,
19        "ipv6": "2001:DB8:F::",
20        "v6mask": 128
21    },
22    "routers": {
23        "r1": {
24            "links": {
25                "lo": {
26                    "ipv4": "auto",
27                    "ipv6": "auto",
28                    "type": "loopback"
29                },
30                "r2-link1": {
31                    "ipv4": "auto",
32                    "ipv6": "auto"
33                }
34            },
35            "bgp": {
36                "local_as": "100",
37                "address_family": {
38                    "ipv4": {
39                        "unicast": {
40                            "neighbor": {
41                                "r2": {
42                                    "dest_link": {
43                                        "r1-link1": {}
44                                    }
45                                }
46                            }
47                        }
48                    },
49                    "ipv6": {
50                        "unicast": {
51                            "neighbor": {
52                                "r2": {
53                                    "dest_link": {
54                                        "r1-link1": {}
55                                    }
56                                }
57                            }
58                        }
59                    }
60                }
61            }
62        },
63        "r2": {
64            "links": {
65                "lo": {
66                    "ipv4": "auto",
67                    "ipv6": "auto",
68                    "type": "loopback"
69                },
70                "r1-link1": {
71                    "ipv4": "auto",
72                    "ipv6": "auto"
73                },
74                "r3-link1": {
75                    "ipv4": "auto",
76                    "ipv6": "auto"
77                },
78                "r3-link2": {
79                    "ipv4": "auto",
80                    "ipv6": "auto"
81                },
82                "r3-link3": {
83                    "ipv4": "auto",
84                    "ipv6": "auto"
85                },
86                "r3-link4": {
87                    "ipv4": "auto",
88                    "ipv6": "auto"
89                },
90                "r3-link5": {
91                    "ipv4": "auto",
92                    "ipv6": "auto"
93                },
94                "r3-link6": {
95                    "ipv4": "auto",
96                    "ipv6": "auto"
97                },
98                "r3-link7": {
99                    "ipv4": "auto",
100                    "ipv6": "auto"
101                },
102                "r3-link8": {
103                    "ipv4": "auto",
104                    "ipv6": "auto"
105                },
106                "r3-link9": {
107                    "ipv4": "auto",
108                    "ipv6": "auto"
109                },
110                "r3-link10": {
111                    "ipv4": "auto",
112                    "ipv6": "auto"
113                },
114                "r3-link11": {
115                    "ipv4": "auto",
116                    "ipv6": "auto"
117                },
118                "r3-link12": {
119                    "ipv4": "auto",
120                    "ipv6": "auto"
121                },
122                "r3-link13": {
123                    "ipv4": "auto",
124                    "ipv6": "auto"
125                },
126                "r3-link14": {
127                    "ipv4": "auto",
128                    "ipv6": "auto"
129                },
130                "r3-link15": {
131                    "ipv4": "auto",
132                    "ipv6": "auto"
133                },
134                "r3-link16": {
135                    "ipv4": "auto",
136                    "ipv6": "auto"
137                },
138                "r3-link17": {
139                    "ipv4": "auto",
140                    "ipv6": "auto"
141                },
142                "r3-link18": {
143                    "ipv4": "auto",
144                    "ipv6": "auto"
145                },
146                "r3-link19": {
147                    "ipv4": "auto",
148                    "ipv6": "auto"
149                },
150                "r3-link20": {
151                    "ipv4": "auto",
152                    "ipv6": "auto"
153                },
154                "r3-link21": {
155                    "ipv4": "auto",
156                    "ipv6": "auto"
157                },
158                "r3-link22": {
159                    "ipv4": "auto",
160                    "ipv6": "auto"
161                },
162                "r3-link23": {
163                    "ipv4": "auto",
164                    "ipv6": "auto"
165                },
166                "r3-link24": {
167                    "ipv4": "auto",
168                    "ipv6": "auto"
169                },
170                "r3-link25": {
171                    "ipv4": "auto",
172                    "ipv6": "auto"
173                },
174                "r3-link26": {
175                    "ipv4": "auto",
176                    "ipv6": "auto"
177                },
178                "r3-link27": {
179                    "ipv4": "auto",
180                    "ipv6": "auto"
181                },
182                "r3-link28": {
183                    "ipv4": "auto",
184                    "ipv6": "auto"
185                },
186                "r3-link29": {
187                    "ipv4": "auto",
188                    "ipv6": "auto"
189                },
190                "r3-link30": {
191                    "ipv4": "auto",
192                    "ipv6": "auto"
193                },
194                "r3-link31": {
195                    "ipv4": "auto",
196                    "ipv6": "auto"
197                },
198                "r3-link32": {
199                    "ipv4": "auto",
200                    "ipv6": "auto"
201                }
202            },
203            "bgp": {
204                "local_as": "100",
205                "address_family": {
206                    "ipv4": {
207                        "unicast": {
208                            "neighbor": {
209                                "r1": {
210                                    "dest_link": {
211                                        "r2-link1": {}
212                                    }
213                                },
214                                "r3": {
215                                    "dest_link": {
216                                        "r2-link1": {
217                                            "next_hop_self": true
218                                        },
219                                        "r2-link2": {
220                                            "next_hop_self": true
221                                        },
222                                        "r2-link3": {
223                                            "next_hop_self": true
224                                        },
225                                        "r2-link4": {
226                                            "next_hop_self": true
227                                        },
228                                        "r2-link5": {
229                                            "next_hop_self": true
230                                        },
231                                        "r2-link6": {
232                                            "next_hop_self": true
233                                        },
234                                        "r2-link7": {
235                                            "next_hop_self": true
236                                        },
237                                        "r2-link8": {
238                                            "next_hop_self": true
239                                        },
240                                        "r2-link9": {
241                                            "next_hop_self": true
242                                        },
243                                        "r2-link10": {
244                                            "next_hop_self": true
245                                        },
246                                        "r2-link11": {
247                                            "next_hop_self": true
248                                        },
249                                        "r2-link12": {
250                                            "next_hop_self": true
251                                        },
252                                        "r2-link13": {
253                                            "next_hop_self": true
254                                        },
255                                        "r2-link14": {
256                                            "next_hop_self": true
257                                        },
258                                        "r2-link15": {
259                                            "next_hop_self": true
260                                        },
261                                        "r2-link16": {
262                                            "next_hop_self": true
263                                        },
264                                        "r2-link17": {
265                                            "next_hop_self": true
266                                        },
267                                        "r2-link18": {
268                                            "next_hop_self": true
269                                        },
270                                        "r2-link19": {
271                                            "next_hop_self": true
272                                        },
273                                        "r2-link20": {
274                                            "next_hop_self": true
275                                        },
276                                        "r2-link21": {
277                                            "next_hop_self": true
278                                        },
279                                        "r2-link22": {
280                                            "next_hop_self": true
281                                        },
282                                        "r2-link23": {
283                                            "next_hop_self": true
284                                        },
285                                        "r2-link24": {
286                                            "next_hop_self": true
287                                        },
288                                        "r2-link25": {
289                                            "next_hop_self": true
290                                        },
291                                        "r2-link26": {
292                                            "next_hop_self": true
293                                        },
294                                        "r2-link27": {
295                                            "next_hop_self": true
296                                        },
297                                        "r2-link28": {
298                                            "next_hop_self": true
299                                        },
300                                        "r2-link29": {
301                                            "next_hop_self": true
302                                        },
303                                        "r2-link30": {
304                                            "next_hop_self": true
305                                        },
306                                        "r2-link31": {
307                                            "next_hop_self": true
308                                        },
309                                        "r2-link32": {
310                                            "next_hop_self": true
311                                        }
312                                    }
313                                }
314                            },
315                            "redistribute": [
316                                {
317                                    "redist_type": "static"
318                                }
319                            ]
320                        }
321                    },
322                    "ipv6": {
323                        "unicast": {
324                            "neighbor": {
325                                "r1": {
326                                    "dest_link": {
327                                        "r2-link1": {}
328                                    }
329                                },
330                                "r3": {
331                                    "dest_link": {
332                                        "r2-link1": {
333                                            "next_hop_self": true
334                                        },
335                                        "r2-link2": {
336                                            "next_hop_self": true
337                                        },
338                                        "r2-link3": {
339                                            "next_hop_self": true
340                                        },
341                                        "r2-link4": {
342                                            "next_hop_self": true
343                                        },
344                                        "r2-link5": {
345                                            "next_hop_self": true
346                                        },
347                                        "r2-link6": {
348                                            "next_hop_self": true
349                                        },
350                                        "r2-link7": {
351                                            "next_hop_self": true
352                                        },
353                                        "r2-link8": {
354                                            "next_hop_self": true
355                                        },
356                                        "r2-link9": {
357                                            "next_hop_self": true
358                                        },
359                                        "r2-link10": {
360                                            "next_hop_self": true
361                                        },
362                                        "r2-link11": {
363                                            "next_hop_self": true
364                                        },
365                                        "r2-link12": {
366                                            "next_hop_self": true
367                                        },
368                                        "r2-link13": {
369                                            "next_hop_self": true
370                                        },
371                                        "r2-link14": {
372                                            "next_hop_self": true
373                                        },
374                                        "r2-link15": {
375                                            "next_hop_self": true
376                                        },
377                                        "r2-link16": {
378                                            "next_hop_self": true
379                                        },
380                                        "r2-link17": {
381                                            "next_hop_self": true
382                                        },
383                                        "r2-link18": {
384                                            "next_hop_self": true
385                                        },
386                                        "r2-link19": {
387                                            "next_hop_self": true
388                                        },
389                                        "r2-link20": {
390                                            "next_hop_self": true
391                                        },
392                                        "r2-link21": {
393                                            "next_hop_self": true
394                                        },
395                                        "r2-link22": {
396                                            "next_hop_self": true
397                                        },
398                                        "r2-link23": {
399                                            "next_hop_self": true
400                                        },
401                                        "r2-link24": {
402                                            "next_hop_self": true
403                                        },
404                                        "r2-link25": {
405                                            "next_hop_self": true
406                                        },
407                                        "r2-link26": {
408                                            "next_hop_self": true
409                                        },
410                                        "r2-link27": {
411                                            "next_hop_self": true
412                                        },
413                                        "r2-link28": {
414                                            "next_hop_self": true
415                                        },
416                                        "r2-link29": {
417                                            "next_hop_self": true
418                                        },
419                                        "r2-link30": {
420                                            "next_hop_self": true
421                                        },
422                                        "r2-link31": {
423                                            "next_hop_self": true
424                                        },
425                                        "r2-link32": {
426                                            "next_hop_self": true
427                                        }
428                                    }
429                                }
430                            },
431                            "redistribute": [
432                                {
433                                    "redist_type": "static"
434                                }
435                            ]
436                        }
437                    }
438                }
439            }
440        },
441        "r3": {
442            "links": {
443                "lo": {
444                    "ipv4": "auto",
445                    "ipv6": "auto",
446                    "type": "loopback"
447                },
448                "r2-link1": {
449                    "ipv4": "auto",
450                    "ipv6": "auto"
451                },
452                "r2-link2": {
453                    "ipv4": "auto",
454                    "ipv6": "auto"
455                },
456                "r2-link3": {
457                    "ipv4": "auto",
458                    "ipv6": "auto"
459                },
460                "r2-link4": {
461                    "ipv4": "auto",
462                    "ipv6": "auto"
463                },
464                "r2-link5": {
465                    "ipv4": "auto",
466                    "ipv6": "auto"
467                },
468                "r2-link6": {
469                    "ipv4": "auto",
470                    "ipv6": "auto"
471                },
472                "r2-link7": {
473                    "ipv4": "auto",
474                    "ipv6": "auto"
475                },
476                "r2-link8": {
477                    "ipv4": "auto",
478                    "ipv6": "auto"
479                },
480                "r2-link9": {
481                    "ipv4": "auto",
482                    "ipv6": "auto"
483                },
484                "r2-link10": {
485                    "ipv4": "auto",
486                    "ipv6": "auto"
487                },
488                "r2-link11": {
489                    "ipv4": "auto",
490                    "ipv6": "auto"
491                },
492                "r2-link12": {
493                    "ipv4": "auto",
494                    "ipv6": "auto"
495                },
496                "r2-link13": {
497                    "ipv4": "auto",
498                    "ipv6": "auto"
499                },
500                "r2-link14": {
501                    "ipv4": "auto",
502                    "ipv6": "auto"
503                },
504                "r2-link15": {
505                    "ipv4": "auto",
506                    "ipv6": "auto"
507                },
508                "r2-link16": {
509                    "ipv4": "auto",
510                    "ipv6": "auto"
511                },
512                "r2-link17": {
513                    "ipv4": "auto",
514                    "ipv6": "auto"
515                },
516                "r2-link18": {
517                    "ipv4": "auto",
518                    "ipv6": "auto"
519                },
520                "r2-link19": {
521                    "ipv4": "auto",
522                    "ipv6": "auto"
523                },
524                "r2-link20": {
525                    "ipv4": "auto",
526                    "ipv6": "auto"
527                },
528                "r2-link21": {
529                    "ipv4": "auto",
530                    "ipv6": "auto"
531                },
532                "r2-link22": {
533                    "ipv4": "auto",
534                    "ipv6": "auto"
535                },
536                "r2-link23": {
537                    "ipv4": "auto",
538                    "ipv6": "auto"
539                },
540                "r2-link24": {
541                    "ipv4": "auto",
542                    "ipv6": "auto"
543                },
544                "r2-link25": {
545                    "ipv4": "auto",
546                    "ipv6": "auto"
547                },
548                "r2-link26": {
549                    "ipv4": "auto",
550                    "ipv6": "auto"
551                },
552                "r2-link27": {
553                    "ipv4": "auto",
554                    "ipv6": "auto"
555                },
556                "r2-link28": {
557                    "ipv4": "auto",
558                    "ipv6": "auto"
559                },
560                "r2-link29": {
561                    "ipv4": "auto",
562                    "ipv6": "auto"
563                },
564                "r2-link30": {
565                    "ipv4": "auto",
566                    "ipv6": "auto"
567                },
568                "r2-link31": {
569                    "ipv4": "auto",
570                    "ipv6": "auto"
571                },
572                "r2-link32": {
573                    "ipv4": "auto",
574                    "ipv6": "auto"
575                }
576            },
577            "route_maps": {
578                "rmap_global": [{
579                    "action": "permit",
580                    "set": {
581                        "ipv6": {
582                            "nexthop": "prefer-global"
583                        }
584                    }
585                }]
586            },
587            "bgp": {
588                "local_as": "100",
589                "address_family": {
590                    "ipv4": {
591                        "unicast": {
592                            "maximum_paths": {
593                                "ibgp": 32
594                            },
595                            "neighbor": {
596                                "r2": {
597                                    "dest_link": {
598                                        "r3-link1": {},
599                                        "r3-link2": {},
600                                        "r3-link3": {},
601                                        "r3-link4": {},
602                                        "r3-link5": {},
603                                        "r3-link6": {},
604                                        "r3-link7": {},
605                                        "r3-link8": {},
606                                        "r3-link9": {},
607                                        "r3-link10": {},
608                                        "r3-link11": {},
609                                        "r3-link12": {},
610                                        "r3-link13": {},
611                                        "r3-link14": {},
612                                        "r3-link15": {},
613                                        "r3-link16": {},
614                                        "r3-link17": {},
615                                        "r3-link18": {},
616                                        "r3-link19": {},
617                                        "r3-link20": {},
618                                        "r3-link21": {},
619                                        "r3-link22": {},
620                                        "r3-link23": {},
621                                        "r3-link24": {},
622                                        "r3-link25": {},
623                                        "r3-link26": {},
624                                        "r3-link27": {},
625                                        "r3-link28": {},
626                                        "r3-link29": {},
627                                        "r3-link30": {},
628                                        "r3-link31": {},
629                                        "r3-link32": {}
630                                    }
631                                }
632                            }
633                        }
634                    },
635                    "ipv6": {
636                        "unicast": {
637                            "maximum_paths": {
638                                "ibgp": 32
639                            },
640                            "neighbor": {
641                                "r2": {
642                                    "dest_link": {
643                                        "r3-link1": {
644                                            "route_maps": [{
645                                                "name": "rmap_global",
646                                                "direction": "in"
647                                            }]
648                                        },
649                                        "r3-link2": {
650                                            "route_maps": [{
651                                                "name": "rmap_global",
652                                                "direction": "in"
653                                            }]
654                                        },
655                                        "r3-link3": {
656                                            "route_maps": [{
657                                                "name": "rmap_global",
658                                                "direction": "in"
659                                            }]
660                                        },
661                                        "r3-link4": {
662                                            "route_maps": [{
663                                                "name": "rmap_global",
664                                                "direction": "in"
665                                            }]
666                                        },
667                                        "r3-link5": {
668                                            "route_maps": [{
669                                                "name": "rmap_global",
670                                                "direction": "in"
671                                            }]
672                                        },
673                                        "r3-link6": {
674                                            "route_maps": [{
675                                                "name": "rmap_global",
676                                                "direction": "in"
677                                            }]
678                                        },
679                                        "r3-link7": {
680                                            "route_maps": [{
681                                                "name": "rmap_global",
682                                                "direction": "in"
683                                            }]
684                                        },
685                                        "r3-link8": {
686                                            "route_maps": [{
687                                                "name": "rmap_global",
688                                                "direction": "in"
689                                            }]
690                                        },
691                                        "r3-link9": {
692                                            "route_maps": [{
693                                                "name": "rmap_global",
694                                                "direction": "in"
695                                            }]
696                                        },
697                                        "r3-link10": {
698                                            "route_maps": [{
699                                                "name": "rmap_global",
700                                                "direction": "in"
701                                            }]
702                                        },
703                                        "r3-link11": {
704                                            "route_maps": [{
705                                                "name": "rmap_global",
706                                                "direction": "in"
707                                            }]
708                                        },
709                                        "r3-link12": {
710                                            "route_maps": [{
711                                                "name": "rmap_global",
712                                                "direction": "in"
713                                            }]
714                                        },
715                                        "r3-link13": {
716                                            "route_maps": [{
717                                                "name": "rmap_global",
718                                                "direction": "in"
719                                            }]
720                                        },
721                                        "r3-link14": {
722                                            "route_maps": [{
723                                                "name": "rmap_global",
724                                                "direction": "in"
725                                            }]
726                                        },
727                                        "r3-link15": {
728                                            "route_maps": [{
729                                                "name": "rmap_global",
730                                                "direction": "in"
731                                            }]
732                                        },
733                                        "r3-link16": {
734                                            "route_maps": [{
735                                                "name": "rmap_global",
736                                                "direction": "in"
737                                            }]
738                                        },
739                                        "r3-link17": {
740                                            "route_maps": [{
741                                                "name": "rmap_global",
742                                                "direction": "in"
743                                            }]
744                                        },
745                                        "r3-link18": {
746                                            "route_maps": [{
747                                                "name": "rmap_global",
748                                                "direction": "in"
749                                            }]
750                                        },
751                                        "r3-link19": {
752                                            "route_maps": [{
753                                                "name": "rmap_global",
754                                                "direction": "in"
755                                            }]
756                                        },
757                                        "r3-link20": {
758                                            "route_maps": [{
759                                                "name": "rmap_global",
760                                                "direction": "in"
761                                            }]
762                                        },
763                                        "r3-link21": {
764                                            "route_maps": [{
765                                                "name": "rmap_global",
766                                                "direction": "in"
767                                            }]
768                                        },
769                                        "r3-link22": {
770                                            "route_maps": [{
771                                                "name": "rmap_global",
772                                                "direction": "in"
773                                            }]
774                                        },
775                                        "r3-link23": {
776                                            "route_maps": [{
777                                                "name": "rmap_global",
778                                                "direction": "in"
779                                            }]
780                                        },
781                                        "r3-link24": {
782                                            "route_maps": [{
783                                                "name": "rmap_global",
784                                                "direction": "in"
785                                            }]
786                                        },
787                                        "r3-link25": {
788                                            "route_maps": [{
789                                                "name": "rmap_global",
790                                                "direction": "in"
791                                            }]
792                                        },
793                                        "r3-link26": {
794                                            "route_maps": [{
795                                                "name": "rmap_global",
796                                                "direction": "in"
797                                            }]
798                                        },
799                                        "r3-link27": {
800                                            "route_maps": [{
801                                                "name": "rmap_global",
802                                                "direction": "in"
803                                            }]
804                                        },
805                                        "r3-link28": {
806                                            "route_maps": [{
807                                                "name": "rmap_global",
808                                                "direction": "in"
809                                            }]
810                                        },
811                                        "r3-link29": {
812                                            "route_maps": [{
813                                                "name": "rmap_global",
814                                                "direction": "in"
815                                            }]
816                                        },
817                                        "r3-link30": {
818                                            "route_maps": [{
819                                                "name": "rmap_global",
820                                                "direction": "in"
821                                            }]
822                                        },
823                                        "r3-link31": {
824                                            "route_maps": [{
825                                                "name": "rmap_global",
826                                                "direction": "in"
827                                            }]
828                                        },
829                                        "r3-link32": {
830                                            "route_maps": [{
831                                                "name": "rmap_global",
832                                                "direction": "in"
833                                            }]
834                                        }
835                                    }
836                                }
837                            }
838                        }
839                    }
840                }
841            }
842        }
843    }
844}