Encap.txt: Difference between revisions
Created page with "The Encap.txt file is a file listing all the AMPRNet [gateway| gateways]. Originally formatted for JNOS systems, it is often parsed with a "munge script" to update Linux ..." |
mNo edit summary |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
An encap.txt file lists [[Gateway|AMPRNet gateways]], in a format like this: | |||
<nowiki># This is a comment | |||
route addprivate 44.10.0.100/32 encap 136.115.52.224 | |||
route addprivate 44.100.129.0/24 encap 176.140.10.22</nowiki> | |||
Originally formatted for JNOS systems, it is often parsed with a "[[munge script]]" to update Linux system routing tables. | Originally formatted for JNOS systems, it is often parsed with a "[[munge script]]" to update Linux system routing tables. | ||
== Portal == | |||
To get an encap.txt file that lists all current gateways, | |||
request all routes from the [[API|Portal API]] and convert the response from JSON to text. | |||
For example (using [[API]] version 2): | |||
<nowiki>curl -s -H "Authorization: Bearer $APItoken" -H "Accept: application/json" https://portal.ampr.org/api/v2/encap/routes | jq -r '.encap[] | select(.encapType == "IPIP") | "route addprivate \(.network)/\(.cidr) encap \(.gatewayIP)"'</nowiki> | |||
A more complete example is in [[Encap.txt/get-encap]]. | |||
If something goes wrong, the result won't be a complete list. | |||
Before using it to update routing tables, it's worth checking whether it has the right syntax and it's reasonably long. | |||
An empty list or a list that's much shorter than a previous version is probably erroneous. | |||
== HTTP == | |||
Previously, a complete encap.txt file was available from the portal as a web page. | |||
This is no longer supported. | |||
[[Category:Reference]] |
Latest revision as of 20:26, 12 December 2024
An encap.txt file lists AMPRNet gateways, in a format like this:
# This is a comment route addprivate 44.10.0.100/32 encap 136.115.52.224 route addprivate 44.100.129.0/24 encap 176.140.10.22
Originally formatted for JNOS systems, it is often parsed with a "munge script" to update Linux system routing tables.
Portal
To get an encap.txt file that lists all current gateways, request all routes from the Portal API and convert the response from JSON to text. For example (using API version 2):
curl -s -H "Authorization: Bearer $APItoken" -H "Accept: application/json" https://portal.ampr.org/api/v2/encap/routes | jq -r '.encap[] | select(.encapType == "IPIP") | "route addprivate \(.network)/\(.cidr) encap \(.gatewayIP)"'
A more complete example is in Encap.txt/get-encap.
If something goes wrong, the result won't be a complete list. Before using it to update routing tables, it's worth checking whether it has the right syntax and it's reasonably long. An empty list or a list that's much shorter than a previous version is probably erroneous.
HTTP
Previously, a complete encap.txt file was available from the portal as a web page. This is no longer supported.