glibc の脆弱性 CVE-2015-7547 でも話題になった 512バイトを超える DNS パケットについてのメモ。 DNS では、TCP が使われたり、512 バイト超えるデータが扱われることは知っていたが、詳しい仕組みなど知らなかったので、備忘録のためにまとめておく。 そもそもなぜ 512 バイト? 調べてみると、 インターネットで使われている IP(IPv4)の仕様では 一度に受信可能なデータグラム(ヘッダーを含むパケッ ト)として、 576 バイトを保証しなければならないと定められています。この値は、64バイトのヘッダーと 512バイトの データブロックを格納可能な大きさとして選択されたものです refs: https://jprs.jp/related-info/guide/008.pdf とのこと。 インターネットで使われている IP の仕様では、かならず「1パケットで
![512バイトを超える DNSパケット | harasou.github.io](https://cdn-ak-scissors.b.st-hatena.com/image/square/f9a6fe8b1f5d7f93fc3b44b48d15e048cde43ee5/height=288;version=1;width=512/http%3A%2F%2Fharasou.github.io%2Fimg%2F2016-02-21-fallback-tcpdump3.jpg)