DNS가 TCP를 사용하는 경우
Brunch Story
평소에 DNS하면 UDP 53번으로 통신하는 것만 생각했었는데, DNS Resolver 코드를 직접 만들면서 레퍼런스를 찾아보니 TCP를 사용하는 경우도 있다는 것을 알았습니다.
1. DNS 기본 프로토콜은 UDP이지만, 특정 상황에서는 TCP를 사용합니다.
2. 응답 크기가 512바이트를 초과할 때 TCP로 전환됩니다. 응답 패킷의 헤더 중 2바이트짜리 Flag가 있는데, 해당 Flag 중 TC(Truncated) 비트가 1이면 TCP로 다시 재시도 합니다.
3. DNSSEC 사용 시 추가 데이터가 필요하거나 중요한 도메인 정보 요청 시에도 TCP가 사용하는 경우도 있습니다.
https://brunch.co.kr/@growthminder/141
P.S. 이번에 직접 DNS Resolver를 만들어보면서, 공부했던 내용들을 전자책으로 만들어보았습니다. 직접 Python으로 코드를 만들면서 DNS 동작 원리를 공부하고 싶으신 분이 있다면 추천 부탁드립니다!
https://kmong.com/gig/576754
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 5월 28일 오후 4:16
실
... 더 보기『Clean Architecture』의 “FUNCTIONAL PROGRAMMING” 마지막에는
... 더 보기세계에서 가장 많이 팔리는 맥주가 뭔지 아십니까? 하이네켄? 버드와이저? 아닙니다. 설화맥주입니다. 처음 들어본다고요? 네. 중국에서만 팔리니까요. 중국에서 1등 하면 세계 1등 하기도 쉽다는 것을 잘 보여주는 사례입니다.
... 더 보기