Comments (3)
Btw for the netmask inclusion, it seems that validation is fine
func ValidatePrefixParam(value string) (string, error) {
return ValidateLengthAndCharset(value, 80, "1234567890abcdef.:/")
}
however I am not sure how to pass the netmask, escaping the /
does not seem to work. Maybe due to this underlying issue?
julienschmidt/httprouter#208
Also regarding the v6, it seems that by default the lookup is in the master table
func RouteNet(r *http.Request, ps httprouter.Params, useCache bool) (bird.Parsed, bool) {
net, err := ValidatePrefixParam(ps.ByName("net"))
if err != nil {
return bird.Parsed{"error": fmt.Sprintf("%s", err)}, false
}
return bird.RoutesLookupTable(useCache, net, "master")
}
so it actually needs to use the /table/master6
extension for v6.
However, let me know if you have any ideas or working examples w.r.t. the netmask inclusion in the :net
param...
from birdwatcher.
Btw it seems that there is some v4/v6 distinction for bird
and bird6
here:
Line 319 in fc7cf5b
This should not apply for bird2 right? I.e., the query should detect the version of the network and use that one, and not set everything on the application layer.
from birdwatcher.
I issued a PR for the v6 problem when looking up routes (tested locally and works):
#52
However, it can probably be closed if you merge #30
I will issue a separate PR for the netmask endpoint
from birdwatcher.
Related Issues (20)
- Regex for interface names HOT 3
- Support for inet-vpn unicast NLRIs (MPLS L3VPN)
- "protocols" endpoint doesn't show routes count for IPv6 protocol on BIRDv2 HOT 3
- Use socket connection to bird instead of calling birdc HOT 4
- Unable to install; error with go-redis HOT 7
- Support for Bird2 ipv4 and ipv6 in a single daemon HOT 9
- allow_from doenst allow cidr HOT 1
- Birdwatcher returns empty array of routes HOT 9
- The problem that Capabilities cannot output. HOT 1
- Install error: cannot find package "go.opentelemetry.io/otel/label"
- panic: interface conversion: interface {} is nil, not string HOT 10
- parsing bird version fails with bird2 HOT 1
- RPM packaging - GitHub Action and RPM issues
- Deprecation of 'go get' for installing executables HOT 1
- Birdwatcher enabling more secure TLS communication HOT 8
- IPv6 interface {} is nil, not string HOT 5
- Unable to build docker container: failed to solve: ehlers/bird2
- Version 2.2.5
- Bird Unreachable errors after route server migration HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from birdwatcher.