Posted on 2009/07/02 09:52
Filed Under OS/Linux






퍼온곳 : http://coffeenix.net/board_view.php?cata_code=5&bd_code=91&bpage=
출처 : sec-info 메일링 리스트

---------------------------------------------------------------------
Re: ping, arp, dns관련하여
날짜: Thu, 24 Jul 2003 16:20:59 +0900
보낸이: "Sukbum Hong" <antihong@tt.co.kr>
받는이: "i" <imalcol@mail.affis.or.kr>, <sec-info@cert.certcc.or.kr>

안녕하십니까?

오늘과내일의 홍석범입니다.

#### ping 과 DNS 에 대해

시스템에 따라 ping 은 Reverse lookup 을 실행합니다.
(참고로 Reverse lookup(역질의) 이란 IP 를 호스트이름으로 변경하는 것을 뜻합니다.)
따라서 10.10.10.6 으로 ping 을 하였을 경우 이 IP 를 호스트 이름으로 변경하려는
시도를 하게 되고, 결국 최상위 root DNS 서버로부터 결과를 찾아가게 됩니다.  
그러나 10.10.10.6 은 사설 IP 이므로 어떤 DNS 서버도 이 IP 에 대한
위임 권한을 갖고 있지 않기 때문에 결국은 timeout 이 될 때까지 대기한 후에야
Reverse lookup 을 포기하고 역질의 없이 해당 IP 로 ping 을 시도하게 되는 것입니다.
말씀하신 57초가 바로 DNS 의 timeout 시간이라 할 수 있습니다.

이를 위해서는 다음과 같이 할 수 있습니다.

* -n 옵션 이용
ping -n 10.10.10.6 와 같이 -n 옵션을 이용하면 reverse lookup 을 시행하지 않습니다.

* /etc/hosts 이용
/etc/hosts 는 일종의 소형 DNS 라고 생각하시면 됩니다.
/etc/hosts 에 해당 IP 를 정의해 주면 역질의를 하지 않습니다.

* /etc/named.conf 이용
/etc/named.conf 에 10.10.10.0/8 대역에 대해 위임 권한을 지정해 주면
최상위 root DNS 서버까지 reverse lookup 을 하지 않게 됩니다.


#### arp 와 DNS 에 대해

arp -a 를 실행하였을 때의 결과를 보면 쉽게 이해할 수 있습니다.

# arp -a
? (192.168.1.246) at 00:D0:B7:9A:25:20 [ether] on eth0
? (192.168.1.191) at 00:D0:B7:88:E8:0D [ether] on eth0
webserver (192.168.1.45) at 00:01:02:54:C2:E7 [ether] on eth0
? (192.168.1.102) at <incomplete> on eth0

여기에서 eth0 인터페이스를 통해 192.168.1.246 의 MAC 주소는 00:D0:B7:9A:25:20,
192.168.1.191의 MAC 주소는 00:D0:B7:88:E8:0D 라는 것을 알 수 있습니다.
그런데, 제일 앞 부분이 다른 3줄은  ? 으로 되어 있는데, 세 번째줄만 ? 대신
webserver 라고 되어 있습니다.  
이 차이점은 ? 은 각각의 IP 주소에 대해 역질의(reverse lookup)를 했는데,
해당하는 호스트 이름이 존재하지 않아 ? 로 표시된 것이고 192.168.1.45의 경우
역질의한 값이  webserver 로 존재하여 위와 같이 표현된 것입니다.

참고가 되셨기를 바랍니다.


감사합니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)
2009/07/02 09:52 2009/07/02 09:52

트랙백 주소 : http://blog.seabow.pe.kr/trackback/660



About

by 삐꾸강아쥐

Counter

· Total
: 137366
· Today
: 67
· Yesterday
: 0
블로그코리아에 블UP하기