IT/AIX

AIX DNS 문제

송시 2022. 5. 28. 23:26
728x90

신입 때 이것저것 테스트해보다가, 어떤 특정 순간부터 ssh 접속하는데 1분 이상의 시간이 소요되는 기묘한 상태를 보게되었다.

 

궁금한건 잘 못 참치하는 내 성격으로 TCP 덤프를 뜨고 한땀한땀 분석했던 풋풋한 추억이 있다.

 

아래는 그 내용에 대한 정리다.

 

=============

신입때 

 
telnet 이나 ftp 를 붙이려고 했는데 대략 1분 정도 후에 연결되는 기이한 현상에 대해서
 
고민하다가 DNS 와 관련된 설정때문이였다는것을 알게되었지요.
 
그리고 시간이 조금 지나 최근 어느 고객사에
 
kt dns 를 AIX에서 설정해줬었는데 NFS관련 데몬에서 행이 걸려서 고생했었지요.
 
혹시나 DNS와 관련된 문제가 아닐까 하는 생각에 그냥 남겨두고 다음날에 방문하였는데
 
OS가 모든 부팅을 끝내놓은 상태로 빠져있어서 
 
/etc/resolve.conf 와 interface 의 dns 정보를 삭제해서 처리했던 적이 있었습니다.
 
고객사에서 문제가 되었던 딜레이에 대한 원인을 잘 모르겠으나(1시간이 지나도 멈춘듯한 상태를 유지했기에)
 
왜 DNS와 관련된 부분에 장애가 생겼을때 약 1분정도의 시간차가 발생하는지를 알아보았는데요.
 
정확히 75초 입니다.
 
**DNS서버의 처리과정은 번외로 두겠습니다.
DNS가 정보가 정상적이라는 조건하에는 다음과 같은 일이 발생합니다.
1. UDP 를 사용하는 패킷이 DNS로 설정되어있는 ip(domain)으로 reverse request 를 요청합니다.
2. 요청 받은 DNS서버는 처리된 대로 UDP 패킷을 response 합니다.
 
 
dns 설정이 잘못되어있는 AIX OS에서의 경우 혹은 정확한 DNS라고 하더라도 그 DNS와 연결이 안되는 상태에서는
1. UDP 를 사용하는 패킷이 DNS로 설정되어있는 ip(domain)으로 reverse request 를 요청합니다.
2. 응답이 오지 않기에 일정 시간 대기 후 1번의 패킷을 보냅니다.(5초)
3. 응답이 오지 않기에 일정 시간 대기 후 1번의 패킷을 보냅니다.(10초)
4. 응답이 오지 않기에 일정 시간 대기 후 1번의 패킷을 보냅니다.(20초)
5. 일정 시간 대기 후 DNS 요청 무시함(40초)
 
5+10+20+40=75초
75초 후에는 DNS요청과 관련된 부분을 처리하지 않고 하려던 작업을 그대로 진행하게 됩니다.
*보시는 바와 같이 2배수로 증가하고 있습니다. 만약의 경우지만 75초 이상의 딜레이가 발생한다면 2배수로 계산하면 될 것 같아요
5+10+20+40+80+160+320+640.............
 
이 75초가 어떠한 것에 영향을 받는 것인가에 대해서 확인하고자 네트워크 튜닝을 시도해봤는데요.
 
tcp_keepinit, tcp_keepintvl 을 변경하였고 
처음 변경했을때에는 35초라는 반응으로 줄어드는 것을 확인하였는데
그 이후로는 또 다시 75초를 유지하더라고요.
 
앞서 말씀드렸던 듯이 신입때의 경험에는 75초를 생각해볼 수 있는데,
 
최근 경험했던 고객사처럼 몇 시간이고 진행되지 않는 경우가 있었네요.
 
일단 DNS와 관련된 서버이거나 극히 드물겠지만 DNS를 입력하신 경우에
 
hang 이나 요청한 것에 대한 느린 반응이나 약 1분의 시간 후에 작동하는 현상은
 
DNS와 관련된 부분일 수 있습니다.
 
처리 방법은
 
interface 의 dns 정보 삭제 및 /etc/resolve.conf 삭제 입니다.
 
728x90

'IT > AIX' 카테고리의 다른 글

AIX 가슴 뜀  (0) 2022.10.21
쉘 스크립트 su 로 인한 환경변수 인식  (0) 2022.05.28
find / scp  (0) 2021.04.01
su - without password  (0) 2020.06.06
DES  (0) 2019.05.22