diff --git a/README.md b/README.md index b0004126b..5f5c32e5c 100644 --- a/README.md +++ b/README.md @@ -304,7 +304,6 @@ You can otherwise customize it with the following: - `ipify` using [https://api64.ipify.org](https://api64.ipify.org) - `ifconfig` using [https://ifconfig.io/ip](https://ifconfig.io/ip) - `ipinfo` using [https://ipinfo.io/ip](https://ipinfo.io/ip) - - `google` using [https://domains.google.com/checkip](https://domains.google.com/checkip) - `spdyn` using [https://checkip.spdyn.de](https://checkip.spdyn.de/) - `ipleak` using [https://ipleak.net/json](https://ipleak.net/json) - `icanhazip` using [https://icanhazip.com](https://icanhazip.com) diff --git a/cmd/ddns-updater/main.go b/cmd/ddns-updater/main.go index e51487fd3..3b4ce161e 100644 --- a/cmd/ddns-updater/main.go +++ b/cmd/ddns-updater/main.go @@ -262,7 +262,7 @@ func _main(ctx context.Context, reader *reader.Reader, args []string, logger log } func printSplash(buildInfo models.BuildInformation) { - announcementExp, err := time.Parse(time.RFC3339, "2023-07-15T00:00:00Z") + announcementExp, err := time.Parse(time.RFC3339, "2024-10-15T00:00:00Z") if err != nil { panic(err) } @@ -273,7 +273,7 @@ func printSplash(buildInfo models.BuildInformation) { Version: buildInfo.Version, Commit: buildInfo.Commit, Created: buildInfo.Created, - Announcement: "Public IP dns provider GOOGLE, see https://github.com/qdm12/ddns-updater/issues/492", + Announcement: "Public IP http provider GOOGLE is no longer working", AnnounceExp: announcementExp, // Sponsor information PaypalUser: "qmcgaw", diff --git a/internal/config/pubip.go b/internal/config/pubip.go index 5e81dfee4..4ca81489a 100644 --- a/internal/config/pubip.go +++ b/internal/config/pubip.go @@ -263,7 +263,12 @@ func (p *PubIP) read(r *reader.Reader, warner Warner) (err error) { copy(httpIPProvidersTemp, p.HTTPIPProviders) p.HTTPIPProviders = make([]string, 0, len(p.HTTPIPProviders)) for _, provider := range httpIPProvidersTemp { - if provider != "opendns" { + switch provider { + case "opendns": // no longer available, for a long time + case "google": // found no longer working on 2024.09.17 + warner.Warnf("http provider google will be ignored " + + "since it is no longer supported by Google") + default: p.HTTPIPProviders = append(p.HTTPIPProviders, provider) } } diff --git a/pkg/publicip/dns/options_test.go b/pkg/publicip/dns/options_test.go index eb926240d..9dc9a2e5c 100644 --- a/pkg/publicip/dns/options_test.go +++ b/pkg/publicip/dns/options_test.go @@ -27,7 +27,7 @@ func Test_SetProviders(t *testing.T) { expectedSettings settings err error }{ - "Google": { + "OpenDNS": { initialSettings: settings{ providers: []Provider{Cloudflare}, }, diff --git a/pkg/publicip/http/http_test.go b/pkg/publicip/http/http_test.go index 9193291b5..9d7d86ad9 100644 --- a/pkg/publicip/http/http_test.go +++ b/pkg/publicip/http/http_test.go @@ -25,7 +25,7 @@ func Test_New(t *testing.T) { timeout: 5 * time.Second, ip4or6: &urlsRing{ banned: map[int]string{}, - urls: []string{"https://domains.google.com/checkip"}, + urls: []string{"https://api64.ipify.org"}, }, ip4: &urlsRing{ banned: map[int]string{}, @@ -39,7 +39,7 @@ func Test_New(t *testing.T) { }, "with options": { options: []Option{ - SetProvidersIP(Google), + SetProvidersIP(Ifconfig), SetProvidersIP4(Ipify), SetProvidersIP6(Ipify), SetTimeout(time.Second), @@ -49,7 +49,7 @@ func Test_New(t *testing.T) { timeout: time.Second, ip4or6: &urlsRing{ banned: map[int]string{}, - urls: []string{"https://domains.google.com/checkip"}, + urls: []string{"https://ifconfig.io/ip"}, }, ip4: &urlsRing{ banned: map[int]string{}, diff --git a/pkg/publicip/http/integration_test.go b/pkg/publicip/http/integration_test.go index 65f502a24..3954ec057 100644 --- a/pkg/publicip/http/integration_test.go +++ b/pkg/publicip/http/integration_test.go @@ -17,7 +17,7 @@ func Test_integration(t *testing.T) { client := &http.Client{} - fetcher, err := New(client, SetProvidersIP(Google)) + fetcher, err := New(client, SetProvidersIP(Ipify)) require.NoError(t, err) ctx := context.Background() diff --git a/pkg/publicip/http/options.go b/pkg/publicip/http/options.go index 76bb486b9..e79f1b1cb 100644 --- a/pkg/publicip/http/options.go +++ b/pkg/publicip/http/options.go @@ -16,7 +16,7 @@ type settings struct { func newDefaultSettings() settings { const defaultTimeout = 5 * time.Second return settings{ - providersIP: []Provider{Google}, + providersIP: []Provider{Ipify}, providersIP4: []Provider{Ipify}, providersIP6: []Provider{Ipify}, timeout: defaultTimeout, diff --git a/pkg/publicip/http/options_test.go b/pkg/publicip/http/options_test.go index ecef16bcd..7847c9fa7 100644 --- a/pkg/publicip/http/options_test.go +++ b/pkg/publicip/http/options_test.go @@ -29,13 +29,13 @@ func Test_SetProvidersIP(t *testing.T) { expectedSettings settings err error }{ - "Google": { + "Ipify": { initialSettings: settings{ providersIP: []Provider{Ifconfig}, }, - providers: []Provider{Google}, + providers: []Provider{Ipify}, expectedSettings: settings{ - providersIP: []Provider{Google}, + providersIP: []Provider{Ipify}, }, }, } diff --git a/pkg/publicip/http/providers.go b/pkg/publicip/http/providers.go index 8154b58e2..8be499af0 100644 --- a/pkg/publicip/http/providers.go +++ b/pkg/publicip/http/providers.go @@ -12,7 +12,6 @@ import ( type Provider string const ( - Google Provider = "google" Ifconfig Provider = "ifconfig" Ipify Provider = "ipify" Ipinfo Provider = "ipinfo" @@ -28,7 +27,6 @@ const ( func ListProviders() []Provider { return []Provider{ - Google, Ifconfig, Ipify, Ipinfo, @@ -118,8 +116,6 @@ func (provider Provider) url(version ipversion.IPVersion) (url string, ok bool) switch provider { case Ipify: url = "https://api64.ipify.org" - case Google: - url = "https://domains.google.com/checkip" case Ifconfig: url = "https://ifconfig.io/ip" case Ipinfo: diff --git a/pkg/publicip/http/providers_test.go b/pkg/publicip/http/providers_test.go index 3becc758e..0fcb72abb 100644 --- a/pkg/publicip/http/providers_test.go +++ b/pkg/publicip/http/providers_test.go @@ -19,7 +19,7 @@ func Test_ListProvidersForVersion(t *testing.T) { }{ "ip4or6": { version: ipversion.IP4or6, - providers: []Provider{Google, Ifconfig, Ipify, Ipinfo, Spdyn, Ipleak, + providers: []Provider{Ifconfig, Ipify, Ipinfo, Spdyn, Ipleak, Icanhazip, Ident, Nnev, Wtfismyip, Seeip, Changeip}, }, "ip4": { @@ -51,7 +51,7 @@ func Test_ValidateProvider(t *testing.T) { err error }{ "valid": { - provider: Google, + provider: Ifconfig, version: ipversion.IP4or6, }, "custom url": { @@ -59,9 +59,9 @@ func Test_ValidateProvider(t *testing.T) { version: ipversion.IP4or6, }, "invalid for ip version": { - provider: Google, + provider: Ifconfig, version: ipversion.IP4, - err: errors.New(`provider does not support IP version: "google" for version ipv4`), + err: errors.New(`provider does not support IP version: "ifconfig" for version ipv4`), }, "unknown": { provider: Provider("unknown"),