Zero's Blog - 2017年10月 https://l2dy.sourceforge.io/2017/10/ Public NAT64 Servers https://l2dy.sourceforge.io/2017/10/30/public-nat64.html 2017-10-30T14:03:00+00:00 https://go6lab.si/current-ipv6-tests/nat64dns64-public-test/A10 Networks NAT64 implementation: set your DNS to 2001:67c:27e4:15::6411NAT64 implementation is running on a A10 vThunder virtual appliance.NAT64 routed prefix: 2001:67c:27e4:642::/64Quick ping6 test if up&running: ping6 2001:67c:27e4:642::5bef:6015PaloAlto Networks Firewall NAT64 with BIND9.9 DNS64: set your DNS to 2001:67c:27e4::64NAT64 implementation is running in PAN500 firewall box.NAT64 routed prefix: 2001:67c:27e4:64::/64Quick ping6 test if up&running: ping6 2001:67c:27e4:64::5bef:6015Jool NAT64 with BIND9 DNS64: set your DNS to 2001:67c:27e4:15::64Jool NAT64 implementation is running in a virtual container on proxmox server.NAT64 routed prefix: 2001:67c:27e4:1064::/64Quick ping6 test if up&running: ping6 2001:67c:27e4:1064::5bef:6015Cisco ASR1000 NAT64 with BIND9 DNS64: set your DNS to 2001:67c:27e4::60NAT64 implementation is running in Cisco ASR1001.NAT64 routed prefix: 2001:67c:27e4:11::/64Quick ping6 test if up&running: ping6 2001:67c:27e4:11::5bef:6015http://www.trex.fi/2011/dns64.htmldns64.trex.fi. IN AAAA 2001:67c:2b0::4 dns64.trex.fi. IN AAAA 2001:67c:2b0::6 NeoMutt Startup Hangs https://l2dy.sourceforge.io/2017/10/21/neomutt-startup.html 2017-10-21T14:41:00+00:00 When network condition is bad, calling getdnsdomainname in init.c blocks NeoMutt startup for a while if getaddrinfo is used in getdomain.c./* now get FQDN. Use configured domain first, DNS next, then uname */ #ifdef DOMAIN /* we have a compile-time domain name, use that for Hostname */ Hostname = safe_malloc(mutt_strlen(DOMAIN) + mutt_strlen(ShortHostname) + 2); sprintf(Hostname, "%s.%s", NONULL(ShortHostname), DOMAIN); #else if (!(getdnsdomainname(buffer, sizeof(buffer)))) { Hostname = safe_malloc(mutt_strlen(buffer) + mutt_strlen(ShortHostname) + 2); sprintf(Hostname, "%s.%s", NONULL(ShortHostname), buffer); } else /* * DNS failed, use the nodename. Whether or not the nodename had a '.' in * it, we can use the nodename as the FQDN. On hosts where DNS is not * being used, e.g. small network that relies on hosts files, a short host * name is all that is required for SMTP to work correctly. It could be * wrong, but we've done the best we can, at this point the onus is on the * user to provide the correct hostname if the nodename won't work in their * network. */ Hostname = safe_strdup(utsname.nodename); #endif Android Captive Portal URL https://l2dy.sourceforge.io/2017/10/15/android-captive-portal.html 2017-10-15T10:31:00+00:00 # In `adb shell` $ settings get global captive_portal_http_url null $ settings get global captive_portal_https_url null $ settings put global captive_portal_http_url https://204.vercel.app/generate_204 $ settings put global captive_portal_https_url https://204.vercel.app/generate_204 $ settings Settings provider (settings) commands: help Print this help text. get [--user <USER_ID> | current] [--lineage] NAMESPACE KEY Retrieve the current value of KEY. put [--user <USER_ID> | current] [--lineage] NAMESPACE KEY VALUE [TAG] [default] Change the contents of KEY to VALUE. TAG to associate with the setting. {default} to set as the default, case-insensitive only for global/secure namespace delete [--lineage] NAMESPACE KEY Delete the entry for KEY. reset [--user <USER_ID> | current] NAMESPACE {PACKAGE_NAME | RESET_MODE} Reset the global/secure table for a package with mode. RESET_MODE is one of {untrusted_defaults, untrusted_clear, trusted_defaults}, case-insensitive list [--lineage] NAMESPACE Print all defined keys. NAMESPACE is one of {system, secure, global}, case-insensitive# In `adb shell` $ settings get global captive_portal_http_url http://google.cn/generate_204 $ settings get global captive_portal_https_url https://google.cn/generate_204 $ settings put global captive_portal_http_url https://204.vercel.app/generate_204 $ settings put global captive_portal_https_url https://204.vercel.app/generate_204 $ settings usage: settings [--user <USER_ID> | current] [--cm] get namespace key settings [--user <USER_ID> | current] [--cm] put namespace key value settings [--user <USER_ID> | current] [--cm] delete namespace key settings [--user <USER_ID> | current] [--cm] list namespace 'namespace' is one of {system, secure, global}, case-insensitive If '--user <USER_ID> | current' is not given, the operations are performed on the system user. If '--cm' is given, the operations are performed on the CMSettings provider.Source: android-9.0.0\_r8, android-7.1.2\_r36