apilayer / freegeoip Goto Github PK
View Code? Open in Web Editor NEWIP geolocation web server
License: Other
IP geolocation web server
License: Other
The Netherlands uses letter within zip/postal codes. The API returns only numbers. Please resolve, we are paying users of the service.
Recently switched over from freegeoip.net/xml/
, appending the &legacy=1
param to the request. However the shape of the data returned isn't identical to the old data. For example, countryCode
is now country_code
.
Not sure if this something you would want to address at your API level (as I get the feeling freegeoip is the face of multiple APIs that have been deprecated), but I thought I'd create an issue anyway for anyone facing the same issue.
While I appreciate the free tier and your freemium business model, withholding SSL for the free tier seems unnecessarily insecure. The rest of the features are more than enough incentive to upgrade plans without compromising peoples security.
Guys, i was supposed to login and use your service but in my surprise the site's signup page's SSL is broken. I'm little disappointed and concern to see this, but i understand sometimes things happens but this is serious bug, please do fix this, i need to signup
For those of us who are building this or using a Docker image, is there a way to configure things properly now that public access to downloading the MaxMind databases is no longer possible? Without changes, it seems as though the URL being accessed is for a domain that's no longer resolvable. And even if the URL was updated, I'd expect permission errors without incorporating the newly required license keys.
I tried using the username/license key setup, but that didn't end up working. The downloaded file was tiny and just said that the account ID was missing.
My current (workaround) plan is to incorporate the geoipupdate
into a custom docket image that extends the image I'm currently using (I'm still on a slightly older version right now). Then have that run periodically through some other script (maybe an ENTRYPOINT
script as cron
feels heavyweight). Finally, I'll change the freegeoip
config to use this file.
This seems like it would work for me, but I'd hate to do this work and find out I'm just missing something here. Also, I wouldn't want others to also have to go through this when they're just looking for the same functionality. Hopefully we can get something done here instead!
How do we figure out why Let's Encrypt is failing?
Is the reason why Let's Encrypt integration failed logged anywhere? I can't seem to figure out why my certificate won't pull / renew anymore.
I run this command:
docker run --restart=always -p 33333:33333 -p 443:443 -v /var/www/geoservices:/tmp/www -i -t fiorix/freegeoip -http :33333 -https :443 -public /tmp/www -letsencrypt -letsencrypt-email [email protected] -letsencrypt-hosts www.{MYDOMAIN},{MYDOMAIN}
and get this output when using https://
[error] 2018/03/01 17:31:33 http: TLS handshake error from {MYIP}: acme/autocert: missing certificate
[error] 2018/03/01 17:31:34 http: TLS handshake error from {MYIP}: acme/autocert: missing certificate
I had it working at one point, but now it appears to be failing, and I don't know how to troubleshoot the error code received from Let's Encrypt. Can anyone help?
Users should not need to compromise security to test your service. it does not cost you anything extra to use SSL and that is a terrible mindset
freegeoip
, geolocation
, go
, ip-database
, geoip
, microservice
, microservices
, api-gateway
, docker
I just noticed on the Geolite2 database page that Maxmind intends to remove the longitude/latitude information from the geolite2 free databases in 2019. Is there a backup plan?
Hello guys, that's a great idea for such service and thank you very much.
But resulting docker image is > 800MB, just for an API that provides access to GeoLite2-City.mmdb.gz (±30mb) the additionnal 770MB sounds like too much.
You are using debian golang 1.9 image (>200mb) maybe switch to Alpine?
This is only issue sofar.
freegeoip.io uses an invalid security certificate. The certificate is only valid for the following names: plex.freegeoip.io, plextools.freegeoip.io
Just thought it might make sense to explain the situation for a little while, as everyone converts over?
Also the site at freegroip still has references to the old project, such as the direct contact link and git hub link...
I'm running freegeoip in an AWS EC2 t2.micro instance using docker. The application runs fine on port 8080 with this command:
sudo docker run --restart=always -p 8080:8080 -d f iorix/freegeoip -public=/var/www
But I believe this has the default limit of 10000 requests per hour. When I try
sudo docker run --restart=always -p 8080:8080 -d f iorix/freegeoip -public=/var/www -quota-max 50000
and open the webpage, I get the error: "Service unavailable, try again later"
Am I passing the -quota-max option wrong here?
Incorrect location for 23.247.211.0/24
This is a local internet service provider.
Correct Location: Waxahachie, TX USA
See geofeed at: https://www.fiberfly.com/geofeed.csv
Company website: https://fiberfly.com/
Just wondering what will happen to https://freegeoip.net when it is being taken over by @apilayer. Free version? Paid plans?
Regardless, great to see the project being continued :)
I think you just need to update the certificate on your site
Google chrome is blocking site with following message:
freegeoip.io normally uses encryption to protect your information. When Google Chrome tried to connect to freegeoip.io this time, the website sent back unusual and incorrect credentials. This may happen when an attacker is trying to pretend to be freegeoip.io, or a Wi-Fi sign-in screen has interrupted the connection. Your information is still secure because Google Chrome stopped the connection before any data was exchanged.
You cannot visit freegeoip.io right now because the website uses HSTS. Network errors and attacks are usually temporary, so this page will probably work later.
uBlock Origin
seems to be blocking requests to the ipstack.com API made on client-side, do you have any solution for that?
In the old https://freegeoip.net/json the returned city was (and is on this very moment) exactly right, but now (on same IP-address) the ipstack engine returns a completely wrong city, lng, lat.
So moving to the new and improved api, the accuracy dropped?
I run the local windows build of freegeoip inside some powershell scripts.
I start the server with:
freegeoip.exe -ArgumentList "-http=:1234 -silent -tcp-fast-open"
I geoip using:
PS C:\Users> Invoke-WebRequest -Uri "http://localhost:1234/json/186.116.207.169?access_key=SOMEKEY&output=json&legacy=1" -UseBasicParsing | Select -Expand Content | ConvertFrom-Json
This returns:
__deprecation_message__ : This API endpoint is deprecated and will stop working on July 1st, 2018. For more information please visit: https://github.com/apilayer/freegeoip#readme
ip : 186.116.207.169
country_code : CO
country_name : Colombia
region_code :
region_name :
city :
zip_code :
time_zone : America/Bogota
latitude : 4.5981
longitude : -74.0758
metro_code : 0
I am concerned why the deprecation_message message shows up? The local method I am using, will this stop working in the near future? If so, how should I be calling the Invoke-WebRequest to prevent this from happening?
The local version I am using is 3.5.0.
I was able to just call https://freegeoip.net/json/ to get the ip address (+location) now I have to add the ip manually. Why is that?
Hi,
I am trying to build freegeoip image from a docker-compose file but without success so far.
I am getting below issue indeed:
[root@vps....]# docker-compose up -d
Building geoip
Step 1/8 : FROM golang:1.9
---> ef89ef5c42a9
Step 2/8 : COPY cmd/freegeoip/public /var/www
ERROR: Service 'geoip' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder927407744/cmd/freegeoip/public: no such file or directory
This is what I have in my v3 docker-compose file:
Dockerfile of freegeoip being in /freegeoip folder
geoip:
build: freegeoip
network_mode: "host"
environment:
- FREEGEOIP_INTERNAL_SERVER=:8888
- FREEGEOIP_HTTP=:9090
logging:
driver: "json-file"
options:
max-size: "5m"
max-file: "2"
Am I doing something wrong?
Thank you
Fabrice
I know that this repo just barely changed hands but I just wanted to create an issue to track this problem:
λ ~/code/freegeoip/ master docker run --restart=always -p 8080:4444 -d apilayer/freegeoip
Unable to find image 'apilayer/freegeoip:latest' locally
docker: Error response from daemon: pull access denied for apilayer/freegeoip, repository does not exist or may require 'docker login'.
See 'docker run --help'.
Currently, ipstack.com serves Indian Flag at http://assets.ipstack.com/flags/in.svg, which is wrong. The Ashoka Chakra should not leave the white stripe.
You can read the flag code of India here: https://knowindia.gov.in/assets/doc/flagcodeofindia_eng.pdf
You can read more about the Ashok Charka itself on Wikipedia at https://en.wikipedia.org/wiki/Ashoka_Chakra
and about the Flag at https://en.wikipedia.org/wiki/Flag_of_India
Also, the Flag at Wikimedia Commons(https://commons.wikimedia.org/wiki/File:Flag_of_India.svg) is available in the public domain.
Edit: https://restcountries.eu/data/ind.svg is correct.
We've been running a self-hosted version of freegeoip for years (ever since the public service started having uptime issues). What's happening to that? Everything I'm reading on here revolves around the public API/service being replaced with a freemium model. =/
I was allowed 10,000 requests per hour.
10,000 * 24 * (365 / 12) = 7,300,000 requests per month allowed
Now I am allowed 10,000 requests per month?
959.90 / 2,000,000 * 7,300,000 = $3503.635 per year to get the same service i was provided before??? WHAT
Hello,
Since yesterday around 12h30, we can find an SSL issue on production node 3.210.48.126.
Can you fix it ???
(It's ipstack project.)
Thanks
docker run -p 8888:8888 -p 8001:8080 -p 8000:8443 -d apilayer/freegeoip -internal-server=:8888 -http=:8080 -https=:8443 -hsts=max-age=31536000 -cert=/home///filename_full.crt -key=/home///key.key
2018/05/14 05:07:41 freegeoip internal server starting on :8888
2018/05/14 05:07:41 database info: starting update
2018/05/14 05:07:41 freegeoip http server starting on :8080
2018/05/14 05:07:41 freegeoip https server starting on :8443
2018/05/14 05:07:41 listener: cert/key failed: open /home///filename_full.crt: no such file or directory
How do I pass the cert/key to the docker container, do I need to mount the /home/**/**
to the container.
AND
How to configure nginx to run a proxy_pass to the container?
The repo is great, too bad its going to be deprecated soon.
Hoping for a quick response.
Thanks
Is there a master data of all the continents, countries and regions that ipstack.com returns with?
I tried searching the internet, but was unable to find them. I would like to use ipstack.com, so I will require the codes that match with what is returned by ipstack.com
Do you have (or plan to have) any kind of endpoint that someone could triggered to delete/anonymize a looked up IP? Within the GDPR process we need to make sure that all the data that we deliver to as they call "third-party processor" need also to be GDPR compliant.
It is quite difficult to handle exception case when it is occured. Naturally it is expected to have http status error from response but http status code is always OK(200) despite it returns error result.
I can easily detect error by checking http status code and deserialize json result according to status code. Otherwise it is very ugly to handle success and error response in the code.
It is unfortunate to see this project turned into a API rate limiting free version. Someone should fork this and continue to maintain the offline version.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.