도와주세요!!
글 수 15,339
2008.11.24 17:52:08 (*.39.72.172)
6668
2008.11.25 12:02:25 (*.211.8.114)
저도 이 문제가 궁금해서 FALINUX의 오재경팀장님께 여쭈어 보았습니다.
너무 바쁘셔서 답을 올려 달라는 말씀을 못드리고 설명해 주신 내용만 정리해 보겠습니다.
1. ifconfig 를 이용하는 방법
제일 간단한 방법으로, 이 방법으로 해결될 수 있다면 가장 이상적인 방법입니다.
즉, 이더넷 장치 사용을 종료했다가 전원을 켜듯이 다시 활성화하는 방법입니다.
ifconfig eth0 down --> 장치 사용을 중지했다가
ifconfig eth0 xxx.xxx.xxx.xxx up --> 장치를 다시 활성화
2. 이더넷 장치 드라이버를 모듈화
전화통화에서도 좀 이해가 어려웠습니다만 정리해 보면,
커널에 포함된 이너텟 장치 드라이버를 모듈로 뺀 다는 것이죠.
고정 라이브러리에서 유동 라이브러리를 사용하는 것처럼
문제가 생기면 모듈을 제거했다가 잠시 후에 모듈을 다시 올리면
이때 이더넷 카드에 대한 모든 설정이 초기화되기 때문에
보드를 리부팅하는 효과를 볼 수 있답니다.
문제는 구현하기가 좀 어렵다는 것인데, 효과는 제일 확실하다고 합니다.
그러므로 첫번째 방법이 안 된다면 커널에서 이더넷드라이버를 모듈로 독립시켜 사용해 보세요.
너무 바쁘셔서 답을 올려 달라는 말씀을 못드리고 설명해 주신 내용만 정리해 보겠습니다.
1. ifconfig 를 이용하는 방법
제일 간단한 방법으로, 이 방법으로 해결될 수 있다면 가장 이상적인 방법입니다.
즉, 이더넷 장치 사용을 종료했다가 전원을 켜듯이 다시 활성화하는 방법입니다.
ifconfig eth0 down --> 장치 사용을 중지했다가
ifconfig eth0 xxx.xxx.xxx.xxx up --> 장치를 다시 활성화
2. 이더넷 장치 드라이버를 모듈화
전화통화에서도 좀 이해가 어려웠습니다만 정리해 보면,
커널에 포함된 이너텟 장치 드라이버를 모듈로 뺀 다는 것이죠.
고정 라이브러리에서 유동 라이브러리를 사용하는 것처럼
문제가 생기면 모듈을 제거했다가 잠시 후에 모듈을 다시 올리면
이때 이더넷 카드에 대한 모든 설정이 초기화되기 때문에
보드를 리부팅하는 효과를 볼 수 있답니다.
문제는 구현하기가 좀 어렵다는 것인데, 효과는 제일 확실하다고 합니다.
그러므로 첫번째 방법이 안 된다면 커널에서 이더넷드라이버를 모듈로 독립시켜 사용해 보세요.
2008.11.25 14:09:22 (*.39.72.172)
답변 감사합니다^^;;
reboot은 구현했습니다.
다만 장비 자체가 리부팅 약 10여초 동안 먹통이 되는데
문제가 발생할 소지가 있어서 네트웍모듈만 리셋하는 방법을 고려하는 중입니다.
이더넷 장치드라이버를 모듈화 하는건 제게 좀 벅찰것 같군요^^;;
거기다 구현하기 어렵다고까지 하시니 ㅡㅡ;; ㅎㅎ
reboot은 구현했습니다.
다만 장비 자체가 리부팅 약 10여초 동안 먹통이 되는데
문제가 발생할 소지가 있어서 네트웍모듈만 리셋하는 방법을 고려하는 중입니다.
이더넷 장치드라이버를 모듈화 하는건 제게 좀 벅찰것 같군요^^;;
거기다 구현하기 어렵다고까지 하시니 ㅡㅡ;; ㅎㅎ
2008.11.25 14:15:03 (*.39.72.172)
장비가 서버로 동작중인데 어플리케이션은 잘 돌아갑니다^^
정상적으로 인,아웃풋 로직에 맞게 잘 돌아가고요.
다만 네트웍이 먹통이니 클라이언트쪽에서 접속이 불가한 상태구요..
불특정하게 발생하는지라 무작정 잡아놓고 상태 보기도 어렵고...
랩에서는 그러한 증상이 나타나지 않는게 제일 문제죠...
처음엔 물리적으로 연결에 문제가 있는것 아닌가 했는데
현장에선 나름대로 체크해 볼건 다 체크해 봤다고 그러니...ㅎㅎ
혹시 임베디드에 tcpdump를 넣어서 체크해볼까 하는데요...
이것 갖다가 컴파일하기가 대략난감이더라구요...
혹시 임베디드용 tcpdump 컴파일 방법에 대한 조언을 구할수 있을까요?
정상적으로 인,아웃풋 로직에 맞게 잘 돌아가고요.
다만 네트웍이 먹통이니 클라이언트쪽에서 접속이 불가한 상태구요..
불특정하게 발생하는지라 무작정 잡아놓고 상태 보기도 어렵고...
랩에서는 그러한 증상이 나타나지 않는게 제일 문제죠...
처음엔 물리적으로 연결에 문제가 있는것 아닌가 했는데
현장에선 나름대로 체크해 볼건 다 체크해 봤다고 그러니...ㅎㅎ
혹시 임베디드에 tcpdump를 넣어서 체크해볼까 하는데요...
이것 갖다가 컴파일하기가 대략난감이더라구요...
혹시 임베디드용 tcpdump 컴파일 방법에 대한 조언을 구할수 있을까요?
우선 먹통이 되면, 보드로 PING 응답이 있다고 합니까?
즉, 에플리케이션은 모두 살아 있는데, 정말 네트워크만 죽었는지 말이죠.
말씀 주시면 FALINUX에 다른 분들에게 저도 조언을 얻겠습니다만,
제가 생각해서는 네트워크만 살리는 것 보다는 보드를 부팅하시는 것을 권하고 싶습니다.
문제가 언제 발생하는지 인진할 수 있다면,
또는 특정 시간 대에 여유가 있다면
에플리케이션에서 보드를 리부팅하게 하는 것이죠.
부팅하는 시간이 걸려서 그렇지, 이 방법 또한 매우 훌륭한 방법이라고 생각합니다.
물론 원인을 찾아 근원을 없애는 것이 가장 좋겠습니다만,
말씀을 들어 보면 커널의 네트워크 부분만의 문제인지,
아니면 하드웨어나 디바이스 드라이버 또는 다른 문제인지
확신할 수 없는 상태에서는 네트워크만 재실행한다고 해서
해결되기는 어렵지 않나 생각되며,
원인을 찾기 전에 보드를 리부팅하는 방법도 고려해 볼 수 있지 않을까 하여
말씀을 드렸습니다.
대신에 보드를 리부팅하면, 그 보드에 딸린 다른 시스템까지 부담을 많이 준다면
이렇게 해서는 안 되겠죠.
이 문제는 다른 분도 경험할 수 있는 내용이므로 다른 분의 의견도 함께 듣고 싶네요.