Comments (11)
@s0urc3-ray Nice idea! I'll look into that.
from dnstube.
My plan is to add config variables for URLs and regex parse patterns, so you can use the endpoint of your choice.
from dnstube.
Thanks for the feedback! Yes, I plan to make this configurable, with an optional RegEx you provide to specify how to extract the output from the result.
from dnstube.
Except that test-ipv6.com is a vastly more complex way to get that IP address. The proper way to extract that info would be to parse the HTML (with HTML agility pack) use a xpath to get to the relevant node, then parse the IP out with IPAddress.Parse.
EDIT: Sorry I was mistaken. That test-ipv6.com site requires javascript! It cannot work with DnsTube.
from dnstube.
@drittich Is there any reason why this project does not have it's own IPv4/v6 Lookup script running via GitHub Pages?
Then this script could be released to users who could setup their own hosting of this script.
Does GitHub's CDN have a Data Centre inside China?
from dnstube.
Happy New Year Everybody!
@drittich Thanks! I hope it works well with GitHub's CDN which as an extra bonus should offer lower latency for most users and perfect uptime 👾
EDIT: Sorry I was mistaken. That test-ipv6.com site requires javascript! It cannot work with DnsTube.
@kurtnelle This really surprised me, how could JavaScript be required for such a simple task... so as I was bored I decided to investigate the site and Discovered how unique and extensive it's testing actually is. That said, I couldn't find a URL to Lookup My IPv6 Address as I would expect to be on the main site page 😞
A few minutes later I had the IPv6 Address Lookup URL which is https://ipv6.vm3.test-ipv6.com/ip/ and returns the following: callback({"ip":"2a00:2***:****:****:****:****:****:****, 2a00:2***:****:****:****:****:****:****","type":"ipv6","subtype":"","via":"","padding":""})
It does seem very unreliable as well, I had requests failing. And why does it return the via and padding variables? 😕
from dnstube.
@s0urc3-ray, Looks like you found their magic source. Great job. Just for completeness to get the ipv4 address its: https://ipv4.vm3.test-ipv6.com/ip/
The requests failing thing may just be a rate limiter preventing multiple requests from the same IP to often.
from dnstube.
@s0urc3-ray I have no experience with GitHub Pages, but from a few minutes browsing the docs I don't see any way to get the IP address without using JavaScript. Do you have an example?
from dnstube.
@drittich Forgive me, I presumed GitHub would allow Basic Code Execution. Instead of GitHub Pages I now have to Recommend CloudFlare Workers that Do Run Server Side Code. 100,000 Requests a Day per Worker Domain on a Free Account, Will this be enough requests? Does CloudFlare have a secret plan for Open Source Software?
I'm putting together an example IPv4/IPv6 Lookup Worker now and will Reply shortly with the URL and the Workers Code.
Anybody could create their own Mirror of this Code on their own CloudFlare Account, then enter the Worker URL into DnsTube if the Requests Limit is too low for just one Worker URL to handle all of DnsTubes Requests.
from dnstube.
@drittich, In stead of configuration perhaps a IQueryIP interface?
from dnstube.
Note you can now edit which APIs are used to determine public IP addresses in the settings.
from dnstube.
Related Issues (20)
- Thank you! TXT record "v=spf1 ip6:" becomes "v=spf1 $2", "ip6:" becomes "$2" HOT 3
- Use 24 hours time format HOT 2
- Automatic DNS update HOT 2
- Start a application at system start without login HOT 6
- The configuration is correct, but the IP address cannot be updated. HOT 1
- When installing in windows showing error 1053 HOT 3
- Nothing is logged HOT 6
- Service cant start Error: 1053 HOT 4
- Update on IP change only HOT 2
- Malformed response, expected IP HOT 2
- Can not retrieve public IP HOT 10
- [SC] StartService FAILED 2: The system cannot find the file specified. HOT 2
- Unable to use with a VPN split tunnel HOT 16
- install-service.bat requires .NET 7 SDK, could be .NET 7 runtime only HOT 5
- Error getting public IPv4: The SSL connection could not be established, see inner exception HOT 8
- send the intranet address to the domain name HOT 3
- Still cannot update IP HOT 11
- can't fetch DNS entries HOT 2
- DnsTube is not able to get the current IPv6. HOT 20
- using 3389 port forwarding HOT 6
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 dnstube.