Force DNS resolving in cURL with the --resolve switch

It’s possible to force DNS resolving in cURL using the –resolve switch. The –resolve switch allows you to tell curl which address to request when it would resolve a given hostname. The format of the argument is domain:port:ip # HTTPS Example curl -I -L https://domain.example.org/ \ –resolve domain.example.org:443:192.168.0.1 # HTTP Example curl -I -L http://domain.example.org/ …

Understanding How Facebook Disappeared from the Internet

Interesting read on how the folks at Cloudflare saw Facebook go down last night, and how it impacted traffic on their end. The Internet is literally a network of networks, and it’s bound together by BGP. BGP allows one network (say Facebook) to advertise its presence to other networks that form the Internet. As we …

DiggyDB – Amazon Route53 as a blazingly fast and reliable database

Building further upon a “wild story” by Corey Quinn, Nicholas Martin describes how to (ab)use DNS TXT records by storing data in them, as if it were a database: When you think about it, DNS configuration is actually a very rudimentary NoSQL database. You can view and modify it at any time quite easily through …

Manage your DNS from GitHub with DNSControl

In this post Sven Luijten uses DNSControl from within GitHub Actions to manage DNS: What if you could edit a JavaScript file with your desired DNS configuration, submit a pull request on GitHub, see a preview of the changes you are about to make, and when you merge it, have those changes be applied completely …

DNS over HTTPS (DoH), a cartoon intro

I like the cartoons that have been appearing for some time now over at Mozilla Hacks, in which they explain technical things in layman’s terms. The latest article again is a good one: first it explains regular DNS (pictured above), and then continues on to DNS over HTTPS. A cartoon intro to DNS over HTTPS …

How and why the leap second affected Cloudflare DNS

At midnight UTC on New Year’s Day, deep inside Cloudflare’s custom RRDNS software, a number went negative when it should always have been, at worst, zero. A little later this negative value caused RRDNS to panic. This panic was caught using the recover feature of the Go language. The net effect was that some DNS …

Zero-config development with Apache’s VirtualDocumentRoot and xip.io

# Use name-based virtual hosting. NameVirtualHost *:80 UseCanonicalName Off # ~/Sites/ vhost configuration – sends foo.bar.dev to ~/Sites/bar/foo <VirtualHost *:80> VirtualDocumentRoot /Users/dave/Sites/%2/%1 <Directory "/Users/dave/Sites"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> What that VirtualDocumentRoot does is map the above company and project to the %2 and %1 variables, respectively. …