Blog of our latest news, updates, and stories for developers
Fridaygram: Google Public DNS, lonely black hole, tiny chameleons
Friday, February 17, 2012
By Scott Knaster,
Google Code Blog
Editor
Google Public DNS
is a fast, free DNS service that we introduced a little more than 2 years ago. As the
Official Google Blog post
aptly puts it, “
DNS
acts like the phone book of the Internet”, translating from human-readable URLs to all-numeric IP addresses. Google Public DNS started as an experimental service and has now become the most-used public DNS service in the world with over 70 billion requests per day, mostly from outside the U.S. Will the next step be support for users in
more distant places
? (Probably not there.)
Speaking of faraway places, astronomers using images from the Hubble space telescope have found
black hole HLX-1
, which appears to be all that’s left of a dwarf galaxy that once contained other stars. The theory is that this late galaxy was torn apart by a nearby spiral galaxy, leaving only HLX-1. The other stars became part of the larger galaxy.
While you’re musing on this supermassive black hole, consider some much tinier creatures: little chameleons, just about one inch long,
recently discovered in Madagascar
. Scientists think this miniaturization might be an evolutionary response to limited resources.
Tiny chameleon: he comes and goes, he comes and goes
Finally, we can’t help but jump on the
Linsanity
bandwagon. Of course, we’re doing it in a nerdy way by pointing you to
this article
(interesting even for non-sports fans) about why talent evaluation is so tricky.
On Fridays we take a break and do a Fridaygram post just for fun. Each Fridaygram item must pass only one test: it has to be interesting to us nerds. Special thanks to
Wired Science
for having many excellent posts this week.
Images: Glaw, F., et al.,
PLoS ONE
A proposal to extend the DNS protocol
Wednesday, January 27, 2010
Today a group of DNS and content providers, including Neustar/UltraDNS and Google are publishing a
proposal to extend the DNS protocol
. DNS is the system that translates an easy-to-remember name like www.google.com to a numeric address like 74.125.45.104. These are the IP addresses that computers use to communicate with one another on the Internet.
By returning different addresses to requests coming from different places, DNS can be used to load balance traffic and send users to a nearby server. For example, if you look up www.google.com from a computer in New York, it may resolve to an IP address pointing to a server in New York City. If you look up www.google.com from the Netherlands, the result could be an IP address pointing to a server in the Netherlands. Sending you to a nearby server improves speed, latency, and network utilization.
Currently, to determine your location,
authoritative nameservers
look at the source IP address of the incoming request, which is the IP address of your DNS resolver, rather than your IP address. This DNS resolver is often managed by your ISP or alternately is a third-party resolver like
Google Public DNS
. In most cases the resolver is close to its users, in which case the authoritative nameservers will be able to find the nearest server. However, some DNS resolvers serve many users over a wider area. In these cases, your lookup for www.google.com may return the IP address of a server several countries away from you. If the authoritative nameserver could detect where you were, a closer server might have been available.
Our proposed DNS protocol extension lets recursive DNS resolvers include part of your IP address in the request sent to authoritative nameservers. Only the first three octets, or top 24 bits, are sent providing enough information to the authoritative nameserver to determine your network location, without affecting your privacy.
The Internet-Draft was
posted
to the dnsext mailing list today, and over the next few months our group hopes to see this proposal accepted as an official Internet standard. We plan to continue working with all interested parties on implementing this solution and are looking forward to a healthy discussion on the dnsext mailing list.
(Updated 24 Jan 2011 to fix broken links)
By Wilmer van der Gaast and Carlo Contavalli on behalf of the Google Public DNS team
Introducing Google Public DNS: A new DNS resolver from Google
Thursday, December 3, 2009
Today, as part of our efforts to
make the web faster
, we are announcing
Google Public DNS
, a new experimental public DNS resolver.
The
DNS protocol
is an important part of the web's infrastructure, serving as the Internet's "phone book". Every time you visit a website, your computer performs a DNS lookup. Complex pages often require multiple DNS lookups before they complete loading. As a result, the average Internet user performs hundreds of DNS lookups each day, that collectively can slow down his or her browsing experience.
We believe that a faster DNS infrastructure could significantly improve the browsing experience for all web users. To enhance DNS speed but to also improve security and validity of results, Google Public DNS is trying a few different approaches that we are sharing with the broader web community through our
documentation
:
Speed: Resolver-side cache misses are one of the primary contributors to sluggish DNS responses. Clever caching techniques can help increase the speed of these responses. Google Public DNS implements prefetching: before the TTL on a record expires, we refresh the record continuously, asychronously and independently of user requests for a large number of popular domains. This allows Google Public DNS to serve many DNS requests in the round trip time it takes a packet to travel to our servers and back.
Security: DNS is vulnerable to spoofing attacks that can poison the cache of a nameserver and can route all its users to a malicious website. Until new protocols like
DNSSEC
get widely adopted, resolvers need to take additional measures to keep their caches secure. Google Public DNS makes it more difficult for attackers to spoof valid responses by randomizing the case of query names and including additional data in its DNS messages.
Validity: Google Public DNS complies with the DNS standards and gives the user the exact response his or her computer expects without performing any blocking, filtering, or redirection that may hamper a user's browsing experience.
We hope that you will help us test these improvements by
using the Google Public DNS service
today, from wherever you are in the world. We plan to share what we learn from this experimental rollout of Google Public DNS with the broader web community and other DNS providers, to improve the browsing experience for Internet users globally.
To get more information on Google Public DNS you can visit our
site
, read our
documentation
, and our
logging policies
. We also look forward to receiving your feedback in our
discussion group
.
By Prem Ramaswami, Public DNS Team
Labels
.app
.dev
#AIY
#devfest18 #devfeststories #gdg #googledevelopers #developers #community
#freeandopen
#GooglePlay #AndroidDevStory #PlayStore #DeveloperConsole #StoreListingExperiments
#growwithgoogle
#io12
#io13
#io14
#io15
#io16
#io17
#io18
#io2012
#io2013
#io2014
+1
20% project
3d
3D face mesh
about.com
accelerator
accessibility
actions
actions on google
actionsongoogle
activity
Administrative APIs
AdMob
adobe
Ads
adsense
advanced
advogato
AdWords
africa
agency program
agpl
AI
AI Principles
AIY
AIY Projects
AIYProjects
ajax
ajax apis
ajax search
ajax search books news apis
all for good
amarok
AMP
AMP Cache
analytics
and Assistant
android
android developer certification
android developers
Android Development
Android Studio
Android Things
android wear
animation
Announcement
announcements
apache
api
API.AI
apis
apis console
apis explorer
apis. charts
app
app design
App dev
App Development
app engine
app indexing
app indexing api
App Invites
apple
Application Development
apps
apps script
AR
ARCore
area 120
artifact management
Artificial Intelligence
asia
assistant
atom publishing protocol
Audio
augmented faces
Augmented images
augmented reality
australia
Auth
authentication
authsub
automatic speech recognition
AutoML
awards
axsjax
barcodes
beacon
beacons
Belarus
bespin
best practices
beta
bigquery
bitcoin
Blockly
blogger
Bluetooth
book search
books API
bootcamp
braintree
Brazil
british english
Brotli
browser
Build Out
building ajax apps
BuildOut
Bulgaria
business
buzz
c++
Cache
caja
caldav
calendar
camino
campfire one
caption
cardboard
CardDAV
cast
Certification
certification award
channel
chinese
chrome
chrome apps
chrome dev summit
chrome devtools
chrome experiment
chrome extensions
chrome os
Chrome OS IO
Chrome OS IO19
chrome web store
chromecast
chromium
chronoscope
cifs
classes
classroom api
client libraries
closure tools
cloud
Cloud anchor
Cloud Anchors
cloud datastore
cloud functions for firebase
Cloud Next
cloud platform
cloud portability
cloud services
cloud sql
cloud storage
Cloud Study Jam
cms
coca cola
CocoaPods
code for educators
code jam
code review
code-in
codeedu
codelabs
coding
coffee with a googler
Colaboratory
collada
color
Colt McAnlis
commerce
community
community connectors
competition
Compilers
compression
compressorhead
computer science
computer vision
computing heritage
conference
conferences
contacts api
Containers
contest
contextual gadgets
conversation design
conversations
Coral
Core ML
couchdb
countdown to I/O 2012
courses
CPU
crash course
Crash Reporting
crashlytics
creative commons
cricket
crisis response
Croatia
cryptocurrency
cryptography
css
css3
custom search
custom search api
Czechia
danish linux forum
dart
Data Compression
Data Visualization
database
Databases
Dataset
Datasets
datastore
dataviz
Daydream
deprecation
Depth
design
devart
develop
developer
Developer Communities
Developer Culture
developer expert
developer features
Developer Keynote
developer relations
developer student clubs
developers
developers. meetup
Development
devfest
devfest developer chrome maps social wave apps
DevFest18
DevFestStories
DFP
dialogflow
differential privacy
discovery service
diversity
django
dns
do-it-yourself
Docker
docs
documentation
documents list api
dojo
domain
domains
doodles
dot net
doubleclick
dreamweaver
Drive
drupal
dsc
dynamic links
earn
earth
Ebay
eclipse
eclipsecon
eddystone
Edge TPU
Edge TPU Accelerator
Edge TPU Dev Board
educatio
education
email
EMEA
endpoints
enterprise
entrepreneurs
Estimator
Estimators
estonia
Ethics
Europe
event
events
evolution
execution api
extensions
Fabric
Fairness
fairness in machine learning
faster web
FCM
FCP
featured
feeds
finance
fintech
Firebase
Firebase Analytics
Firebase Cloud Messaging
Firebase Dynamic Links
firebug
firefox
firestore
firevox
firstbeta
fitness
flutter
Flutter 1.2
Flutter 1.5
Flutter 1.9
Flutter at IO
Flutter Clock
Flutter Create
Flutter for desktop
Flutter for web
Flutter Interact
Flutter Live
flutter release preview 1
flutter release preview 2
Follow Us
font api
Fonts
fosdem
freebsd
freenet
Fridaygram
fusion tables
G Suite
G+
gadgets
Game Developers Conference
games
gaming
gcc
gci
GCP
GDA
gdata
GDC17
GDD
gdd07
gdd08
gdd09
GDD11
GDE
gdg
gdl
gdl weekly
gears
geo
geolocation
geoserver
getpaid
ghop
git
github
GKE
gmail
Gmail APIs
GMTC
gnome
gnome women's summer outreach program
Go
golang
goo.gl
Google
Google AI
Google APIs
google apps
google apps api
google apps for your domain
google apps marketplace
Google AR
google assistant
Google Assistant Bluetooth
Google Assistant IO
Google Assistant IO19
google assistant sdk
Google Brain
google buzz
Google Cardboard
google cast
google certification
google chart api
google checkout
google chrome
Google Cloud
Google Cloud Messaging
Google Cloud Platform
google cloud storage
google code
google code project hosting
google code search
google code university
google compute engine
Google Coral
google data apis
google data protocol
Google Data Studio
google developer day
google developer days
Google Developer Groups
Google Developer Scholarship
google developers
Google Developers Academy
google developers certification
google developers community groups
Google Developers Groups
Google Developers Live
Google Developers site
Google Developers University Consortium
google docs
Google Docs API
google doctype
google domains
Google Drive
Google Drive SDK
google earth
google fit
Google Fonts
google for startups
google friend connect
google gadgets
google gears
google grants
Google Groups Settings
google health
Google Home Hub
Google I/O
Google Identity Platform
Google in Asia
google io
Google IOS Android
Google Maps
Google Maps Platform
google mashup editor
Google Noto fonts
google pay
google pay api
google photos
google platform
Google Play
Google Play Developer API
google play services
Google Registry
google scholarships
Google Science Fair
Google sheets
Google Sheets API
Google Slides
Google Slides API
google space
Google Spreadsheets API
google storage
google summer of code
Google tech talk
Google technology
google technoloy user groups
google tv
google visualization api
google wallet
Google Wave
google web elements
google web toolkit
google.org
google+
GoogleAssistant
googlecast
googledevelopers
googleio
googlenew
GooglePlay
googlewebelements googleio
GPE
GPGS C++ Games
GPT
green linux
Groups API
grow
grow with google
gsoc
GSuite
gtags
gtug
guest post
guice
gulp
GWSOP
gwt
gzip
hackathon
hacking
hackthon
hamilton
hangouts
Hangouts Chat
Hangouts Chat API
haproxy
Headset
hg
hibernate
howto
hpux
html
html5
http
I/O
I/O 17
I/O 2017
I/O Extended
I/O Live
ical
identity
ietf
ignite
igoogle
iguanas
iiw
Image Compression
image search
Imara
In-app billing
in-app payments
in-app purchase
incubator
India
indie
Indie Games Accelerator
information visualization
Instagram
intelligentwire
interactive music
internationalization
internet explorer
internet of things
internship
interviews
IO
IO17
io18
IO19
IO19 Flutter
IO2017
ios
iOS SDK
IoT
ipad
iphone
iPhone Development
israel
Issue Tracker
jaiku
japanese
java
javascript
jetpack
joomla
joomladayus2007
joomladayusa
json
karaoke
KDE
KDE 4.0
Keras
kernel
kernel summit
keynote
khronos
kids
kids coding
kids coding team
kml
korean
Krakow
Kubernetes
labs
lanchpad
language
languages
latam accelerator
LatAm startups
Latin America
latitude
latvia
launch
launchpad
launchpad accelerator
launchpad studio
lca
Leadership
Learning
lens
lessons
licenses
linux
linux foundation
linux summit
linux virtual server
linuxconf eu
lithuania
Local Home
localization
LoCo
london
mac
MacFuse
Machine
machine intelligence
machine learning
machine learning accelerator
maker
Makers
malware
maps
maps apis
Marketplace
material
material components
material design
MDL
MediaPipe
meetup
mercurial
Mexico startups
MIT CSAIL
MIT Media Lab
ml
ML Kit
MLCC
mobile
Mobile App Development
mobile design
Mobile Development
mobile performance
mobile sites
mobile speed
mobile UX
Mobile web
Mobile World Congress
mod_pagespeed
Moderator
monetize
MOOC
mozilla
multi-platform
mylar
myspace
MySQL
mythtv
named
narratives
native ads
native client
nearby
netbsd
Next Billion Users
non-profit
nonsense
nosql
notifications
Noto Serif CJK
nss
nvidia
NYT
O3D
oauth
OAuth playground
OAuth2
Object Detection and Tracking
objective-c
OCaml
Occlusion
ocr
ODF
office hours
oha
online payments
OOXML
open data
open source
open source blog
open source releases
open web
open-source
openajax alliance
opengl
openid
opensocial
openssh
openssl
Optimization
oreilly
orkut
oscon
oscon2007
osi
oss devs
ossjam
osx
pactester
page speed
PageSpeed
palette
payment handler
payment request api
payment web standard
payments
paypal
Peer bonus program
performance
persistent AR
phone
photos
picasa
picasa web
places API
play services
playground
plone
plone sprint
podcast
poland
Poly
polymer
Polymer Summit
portugal
posix
PowerMeter API
prediction api
Prerender
preview
privacy
prizes
processing
programmers
programming
Progressive Web App
Project Connected Home over IP
project hosting
Project Loon
Project Tango
prototype
proximity
pubsubhubbub
PWA
py3k
python
python sprint
Qualcomm
Qualcomm Google
rails
random hacks of kindness
Rasberry Pi
reader
releases
Remote Config
research
reserve seats
Responsible AI
result snippets
Reto Meier
Rewarded Ads
Rewarded Video Ads
rhino
Saatchi
Safety & Security
safety and security
salesforce
samba
Sample dialogs
sandbox
Santa Tracker
scalability
scale-ups
Sceneform
schedule
scholarship
scholarships
scopes
Scratch
screencast
sdk
sdks
search
security
Serbia
serif
service worker
sessions
seurat
shape
Sheets API
shindig
shopping
Shoreline Amphitheatre
shortcuts
showcase
sidewiki
sign-in
silverstripe
SIMD
sitemaps
sites api
sixapart
sketchup
Slides API
small business
small businesses
Smart Home
Smart Lock for Passwords
soap search api
soc
social
social graph
solaris
solutions challenge
souders
spa2007
Space
spdy
speakers
speech
speed
speed tracer
Stable release
standards
startup
Startup accelerator
startup africa roadtrip
startups
STEM
storage
Street View
Strobe
student programs
students
stuff
style
subscribed links
subscription
subversion
summer of code
Sundar Pichai
SVG
sxsw
syndication
tasks API
Team Drives (new)
techmakers
templates
TensorFlow
tensorflow dev summit
TensorFlow Lite
TensorFlow Research Cloud
tensorRT
Test Lab
testing
text embedding models
TF Lite
tfdevsummit
TFLite
themes
thought leadership
tool
Toolkit
tools
topp
TPU
training
Traits
tranparency
transit
translate
translation
tutorials
tv
ubiquitous computing
ubiquity
ubucon
ubuntu
Udacity
UI
Ukraine
unicode
unit test
Unity
universal
Universal App Campaigns
University
unix
url
url shortener
URLs
UX
verification
video
videos
Vim
virtual keyboard
virtual reality
visualization
voice
voice kit
voice user interface
VR
VUI
wattpad
Wearables
Weave
web
web animations api
web apps
web components
web design
web designer
web development
web exponents
web fonts
web performance
web platform docs
web registry
webfonts
webgl
webmaster
WebP
website optimizer
websites
webVR
weekly roundup
WhiteHouse.gov
Who's at Google I/O
win
windows
windows programming
Winter of Code
Women in Tech
Women Tech Makers
women techmakers
WomenTechmakers
writing
wtm
xauth
yahoo
young developers
Young Makers
youtube
zlib
zurich
ZXing
Archive
2019
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2018
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2017
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2016
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2015
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
2014
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2013
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2012
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2011
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2010
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2009
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2008
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2007
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2006
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2005
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Subscribe
Follow @googledevs
Visit
Google Developers
for docs, event info, and more.