diff --git a/src/mtp_config.erl b/src/mtp_config.erl index fcbb4a7..b33f552 100644 --- a/src/mtp_config.erl +++ b/src/mtp_config.erl @@ -261,8 +261,10 @@ http_get(Url) -> {ok, Vsn} = application:get_key(mtproto_proxy, vsn), UserAgent = "MTProtoProxy/" ++ Vsn ++ " (+https://github.com/seriyps/mtproto_proxy)", Headers = [{"User-Agent", UserAgent}], + %% XXX: ipfamily only works on OTP >= 20.3.4; see OTP 2dc08b47e6a5ea759781479593c55bb5776cd828 {ok, {{_, 200, _}, _, Body}} = - httpc:request(get, {Url, Headers}, [{timeout, 3000}], []), + httpc:request(get, {Url, Headers}, [{timeout, 3000}], + [{socket_opts, [{ipfamily, inet}]}]), {ok, Body}. random_choice(L) -> diff --git a/src/mtproto_proxy.app.src b/src/mtproto_proxy.app.src index 9f2f1cb..35d6fe4 100644 --- a/src/mtproto_proxy.app.src +++ b/src/mtproto_proxy.app.src @@ -31,8 +31,9 @@ %% 2nd one will be tried and so on {ip_lookup_services, ["http://ipv4.seriyps.ru/", - "https://digitalresistance.dog/myIp", - "http://ipv4.myexternalip.com/raw"]}, + "http://v4.ident.me/", + "http://ipv4.icanhazip.com/", + "https://digitalresistance.dog/myIp"]}, %% {external_ip, "YOUR.SERVER.EXTERNAL.IP"}, %% Interface to listen for incoming connections