==================================================================================================
※ 해당 내용의 경우 VMware를 이용한 로컬 네트웍 상에서 작업을 하는 내용을 안내하여 드립니당~!
[ 시스템 설정을 위한 내용 ]
설치된 Base Windows : Windows 7 Pro
설치된 CentOS Server : CentOS 6.5
설치된 VMware Program : VM workstation 10.0.0
==================================================================================================
가상화 기반(VMware 와 같은) DHCP 환경의 리눅스 서버에서 자주 발생되는 현상으로
/etc/resolv.conf 파일을 수정하고 저장한뒤 서버 리부팅이나 network restart시
resolv.conf 파일의 내용이 초기화 되는 현상이 확인됩니다.
이 내용은 버그 및 오류가 아니라는 부분은 분명히 언급하고 지나가야 될 듯합니다.
/etc/resolv.conf 파일 상단에 보면 아래와 같은 주석 문구가 있는데 이 내용은
; generated by /sbin/dhclient-script
DHCP를 이용하여 IP를 자동으로 할당 받을 때 '/sbin/dhclient-script' 명령에 의해
/etc/resolv.conf 파일이 재생성되게 되어있다는 뜻으로 해석됩니다.
따라서 오류가 아니므로 그대로 사용하셔도 무방하나 /etc/resolv.conf 파일이 자주
재생성되면 귀찮아 질 수 있고, 실 운영서버에서는 치명적인 오류가 될 수 있으므로
이를 방지하기위해 /sbin/dhclient-script 파일 내용에서 'make_resolv_conf’함수를
호출하는 부분이나 함수부분을 찾아 주석 처리해주면 됩니다.
# vi /sbin/dhclient-script
97번 행에서 정의된 'make_resolv_conf()' 함수 부분을 조정하셔도 되고
아래와 같이 ip설정을 맞추기 위한 부분의 함수에서 'make_resolv_conf()' 함수 호출 부분을 주석처리 해주셔도 됩니다.
====================================================================================================================
309 dhconfig() {
....
464 if [ -n "${new_host_name}" ] && need_hostname; then
465 hostname ${new_host_name}
466 fi
467
468 #make_resolv_conf
469
470 if [ -n "${DHCP_TIME_OFFSET_SETS_TIMEZONE}" ] &&
471 [[ "${DHCP_TIME_OFFSET_SETS_TIMEZONE}" = [yY1]* ]]; then
472 if [ -n "${new_time_offset}" ]; then
473 # DHCP option "time-offset" is requested by default and should be
474 # handled. The geographical zone abbreviation cannot be determined
475 # from the GMT offset, but the $ZONEINFO/Etc/GMT$offset file can be
476 # used - note: this disables DST.
477 ((z=new_time_offset/3600))
478 ((hoursWest=$(printf '%+d' $z)))
====================================================================================================================
538 dh6config() {
539 case "${reason}" in
540 BOUND6)
541 if [ -z "${new_ip6_address}" ] &&
542 [ -z "${new_ip6_prefixlen}" ]; then
543 exit_with_hooks 2
544 fi
545
546 add_ipv6_addr_with_DAD
547
548 #make_resolv_conf
549 ;;
550
551 RENEW6|REBIND6)
552 if [ -n "${new_ip6_prefixlen}" ] &&
553 [ -n "${new_ip6_address}" ] &&
554 [ ! "${new_ip6_address}" = "${old_ip6_address}" ]; then
555 add_ipv6_addr_with_DAD
556 fi
557
558 if [ ! "${new_dhcp6_name_servers}" = "${old_dhcp6_name_servers}" ] ||
559 [ ! "${new_dhcp6_domain_search}" = "${old_dhcp6_domain_search}" ]; then
560 make_resolv_conf
561 fi
562 ;;
563
'Linux > Tip & Tech' 카테고리의 다른 글
iSCSI설정하기 (0) | 2016.07.11 |
---|---|
Default Cron Jobs 확인내용 (0) | 2016.02.16 |
보안성을 강화하기 위한 Linux Kernel Parameter 를 알아보자. (0) | 2014.08.13 |
Linux NIC 정보 초기화 및 강제설정 (0) | 2014.06.13 |
CentOS YUM repository 서버로 만들기 (0) | 2014.04.11 |