[네트워크] 리눅스 네트워크 error 발생시 대처 요령

가끔 백업등 대단위의 트래픽이 전송될때 리눅스의

네트워크가 다운되는 경우가 있습니다.

일반적으로는 ne2000 이나 realtek등 저가 랜카드에서

이러한 현상이 발견되는 경우가 대부분이라고 하는데,

우리가 서비스하는 3com계열의 랜카드에서도 이러한 현상이

가끔 확인되고 있습니다.

이때에는 다음과 같이 조처하시기 바랍니다.

1. /etc/rc.d/init.d/network restart

일반적으로는 위와 같이 network를 restart 작업시 살아나는 경우가

대부분입니다.

위와 같이 한후 ifconfig 를 하면 eth0 이 살아난 것을 확인할

수 있고 route -nr 로도 gateway 가 확인이 되지만 network가 안되는 경

2. /root 디렉토리의 arp.sh 를 실행.

/root/arp.sh 또는

cd /root

./arp.sh 실행

arp.sh 는(아래는 www50의 경우 제 생각일뿐 아직 검증이 되지는

않았으므로 현재는 www47,48,49,50만 설치했습니다.)

#!/bin/sh

/sbin/ifconfig eth0 211.47.65.34

/usr/sbin/send_arp -i eth0 211.47.65.34 00010283B664 211.47.65.255

ffffffffffff

로 되어 있는데, 간단하게 설명을 드리면 원리적으로 생각을 해봅시다.

일단 ifconfig 로 eth0 이 잡힌다는 것은 NIC 가 물리적인 장애가 없다는

것입니다.

(OSI7 layer 를 잘 생각해 보세요.)

그렇다면 일단 내부(이더넷) 구간에서 통신이 안된다는 것인데,

잘 아시다시피 이더넷 구간에서 통신을 하는 원리는 바로 “ARP” 입니다.

따라서 gateway 및 스위칭에 ARP 를 broadcasting 해 주면 network 는 될

것입니다.

일단 gateway 까지만 통신이 되면 이후의 통신은 gateway 가 해 주므로

여기까지만 하면 될 것입니다..

위 스크립티는 바로 ARP 를 broadcast해주는 것인데,

(동시에 arp cache 를 refresh 해주는 기능도 포함되어 있습니다.)

send_arp 는 제가 미러링 시스템을 준비할 때 이용했던 util 이고

(레드햇의 클러스터링 패키지인 piranha 내에 속한 실행파일입니다.)

00010283B664 이 211.47.65.34 의 MAC address 입니다.

그리고 211.47.65.255 ffffffffffff 는 broadcast 하는 부분이구요…

혹, 당직등시에 다운시에는 위 스크립트를 실행후 결과를 알려

주시기 바랍니다..

(혹 arp 에 대해 잘 모르시는 분은 arp 에 대해 꼭 공부를 하시기 바랍니

다.

arp 는 이더넷 구간에서의 통신에 매우 중요한 개념입니다.)

3. reboot

1,2가 안될때에는 설명이 필요없는 마지막 방법입니다…

오직 reboot 만이 살길입니다..

재부팅시 최신 커널 이미지로 부팅하시기 바랍니다.

그럼….

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

페이스북/트위트/구글 계정으로 댓글 가능합니다.