기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요 눈팅회원입니다.


몇일간 머리를 쥐어짜고 있는데 잘 안되서 고수님들께 조언 부탁드립니다.


X86 지원 보드에 네트웍 포트가 2개있습니다. 


eth0에서 eth1로 소켓통신을 하려고 합니다.


그런데 커넥션이 안되네요..ㅜㅜ


eth0에서 소켓 생성, 바인드, Listen중이고


eth1에서 소켓 생성, 바인드까지는 잘되었는데


connecnt 하려고 하는부분에서 문제가 발생합니다.



그런데 재미있는건 아이피만 변경하고 다른 PC에서는 Connect가 된다는 겁니다.


connect가 안되는 보드에서 Connect부분에 perror로 메세지를 확인해보면 


operation  now in progress 라고 뜹니다..





OS는 우분투11.10을 올려서 쓰고 있습니다.


조언좀 부탁드리겠습니다.


유형목

2012.05.19 07:41:04
*.131.98.177

IP 포워딩이 막혀 있어서 안되는 현상인것 같군요. root 로 로그인 한 다음 아래처럼 해보세요.

# echo “1” > /proc/sys/net/ipv4/ip_forward


영구적으로 처리하려면 다음과 같이 하면 됩니다.

/etc/sysctl.conf 파일 수정

net.ipv4.ip_forword = 1

리부팅..

은민아빠

2012.05.20 02:05:25
*.232.56.1

제가 테스트를 제대로 하지 못하는건지 잘안되네요..ㅜㅜ

A-PC의 eth0(10.1.1.100), eth1(10.1.1.101)에서  유형목 님의 말씀대로 ip_forward설정을 1로 하고 테스트를 하였는데 소켓커넥션이 되지 않는것 같아서

ping으로 테스틀 했는데도 여전히 안되네요..ㅜㅜ

ping 테스트는 #] ping -I eth0 10.1.1.101

이렇게 하였습니다. 옵션은 대문자 아이 이구요...

결과는  Destination Host Unreachable입니다.ㅠㅠ

은민아빠

2012.05.20 01:57:35
*.232.56.1

답변 감사합니다.

그런데 설정을 해도 소켓통신이 안되는것 같습니다. ㅜㅜ

다시 한번 해보고 결과 댓글 달겠습니다.

관리자

2012.05.20 04:39:49
*.200.239.234

음....네트워크 설정에 문제가 있어 보이네요.


일단 네트워크 구성도가 있어야 답을 할 수 있을 듯 하고요.

예전에 관련 프로젝트들을 했을 때는 전혀 문제없이 통신이 잘 되었습니다.


대부분 routing path 조정에서 문제가 발생합니다.



은민아빠

2012.05.20 06:56:11
*.232.56.1

몇일을 계속 이러는데도 원인조차 모르겠습니다.ㅜㅜ

네트웍구성은 일반 스위치에 연결되어 있어서 특별한 네트웍 구성은 아닙니다.

다만 제가 테스트하는 서버가 이더넷 포트가 4개인것이라 그것이 조금 특별한데

그중에 0번과 3번을 사용중이고 0번이 클라이언트 3번이 서버 포트로 되어 있습니다.

1. 서버는 C로 소켓 리스닝 상태이고, 3번포트에서 아파치 서버도 같이 돌아가고 있습니다.

2. 0번은 클라이언트 이고 소켓커넥트를 하려고 하는 중에 있습니다.

이 소켓 커넥트에서 에러가 나서 소켓 커넥트 밑에 perror로 찍어보니 

Operation now in progress 메세지만 출력이 되고 소켓 커넥션이 안됩니다.


클라이언트에서 127.0.0.1로도 시도해봤으나 소켓 커넥션 에러가 납니다.

어디 자료를 구할데라도 없을까요?? ㅠㅠ

고도리

2012.05.20 17:11:20
*.127.19.87

route -rn 명령을 쳐서 나오는 결과물 올려 주시기 바랍니다.


참고로, routing table이 꼬이면 절대 통신안되는데, 대체적으로 이더넷 카드 하나당 다른 망으로 연결되어 있다는 것을 기본으로 합니다.


현재 증상은 제 생각에는 lan card 두 개를 같은 망에 연결해서 나오는 증상일겁니다.

eth0와 eth1으로 현재 상황에서 따로 따로 packet을 보내지 못할겁니다.


왜냐하면 routing table에서는 자동으로 먼저 잡혀 있는 녀석으로 패킷을 보내버릴 가능성이 높습니다.


3번 포트는 외부에서 접속하는 경우는 문제 없을겁니다. 내가 쏘는게 아니라 외부서 들어온 것이라서요.

현 상황으로는 routing table을 적절하게 구성을 해야할 듯 합니다.

은민아빠

2012.05.22 04:22:06
*.232.56.1

route -n


Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

0.0.0.0         10.1.3.1        0.0.0.0         UG    0      0        0 eth0

10.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 eth3

10.1.3.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0

은민아빠

2012.05.22 22:41:20
*.232.56.1

자답입니다....


소켓통신할때 eth0 를 빼고 커넥션을 하면 로컬 통신은 가능하네요..


그런데 eth0 포트를 지정해서 통신하면 여전히 ping 도 안나갑니다. ㅠㅠ


우선 가능한 방법으로 사용하고 차후에 방법을 조금더 찾아봐야겠습니다.


답변주신분들 관신가져주신분들 모두 감사드립니다.

고도리

2012.05.23 00:44:08
*.200.239.234

routing table때문에 lan카드의 패킷 전송이 헤매는 것일 가능성이 높습니다.

정확하게 어떤 것을 하시고자 하는지(목적)에 따라 네트워크 구성을 새롭게 하셔야 할 듯 하고요.


지금의 상황......즉,


같은 망에서 2개의 ethernet을 같은 ip 대역으로 사용하실 경우 외부서 해당 장비로는 접근이 되겠지만(peer to peer) 해당 장비서 외부로 두 개의 인터페이스를 쓰는 것은 routing table을 재 작업 해주셔야 합니다.



은민아빠

2012.05.23 22:42:04
*.232.56.1

이렇게 변경하니 핑도 정상적으로 나갑니다.
답변주셔서 감사드려요
아래는 정상적으로 사용되는 라우팅 테이블입니다.
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.1.3.1        0.0.0.0         UG    0      0        0 eth0
10.1.1.0        *               255.255.255.0   U     1      0        0 eth3
10.1.1.0        *               255.255.255.0   U     1      0        0 eth2
10.1.1.0        *               255.255.255.0   U     1      0        0 eth1
10.1.3.0        *               255.255.255.0   U     1      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 eth0

고도리

2012.05.23 22:55:35
*.200.239.234

^^ 잘 되었다니 다행입니다.

은민아빠

2012.05.29 23:29:12
*.232.56.1

이솝식구들 덕분이죠...

다들 기를 불어넣어주시니까요..ㅎㅎㅎ

이솝식구들 오늘도 즐거운 하루되시기 바랍니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
5368 디바이스 드라이버에서 메모리를 잡으니 다른 스택메모리에 영향을 주... [1] bwparc 2012-05-23 1541
5367 USB Ethernet CDC로 RNDIS를 이용한 NFS구성 문의 [4] people2 2012-05-23 1597
5366 C110 소비전류가 어떻게 되나요? [6] 땜철학자 2012-05-22 1517
5365 s3c2440 usb host 질문 입니다. (꼭) kingdomy 2012-05-22 749
5364 NULL pointer dereference로 커널패닉이 났지만, 실제 원인이 되... bwparc 2012-05-21 1351
» eth0 에서 eth1로 소켓통신을 하려면 어떻게 해야되나요? [12] 은민아빠 2012-05-19 1730
5362 HDMI 연결시 제품에 화면 출력 여부 설정 방법 문의 [2] 현쓰 2012-05-18 1501
5361 삼성 V210 동시 인코딩/디코딩이 가능한가요? [5] 이영재 2012-05-18 1641
5360 안녕하세요. fork() 가 안되는 문제점이 있습니다. [2] 자미 2012-05-17 1425
5359 USB host와 gadget을 동시에 사용하는게 가능한가요? [2] 문철민 2012-05-17 1665
5358 SPI를 이용한 t-flash제어 방법 문의 [4] 김정희 2012-05-17 1378
5357 프레임 버퍼 픽셀 값 쉬프트 연산하는 방법 [1] 박용순 2012-05-17 1527
5356 [V210] I2C #1 에 관한 질문입니다. 물소래 2012-05-16 957
5355 임베디드 리눅스에서 t-login(hsdpa 3g modem)을 사용하려고 합니다. kirari83 2012-05-16 1142
5354 MountService 구조에 대해서 의문점 [3] 민이아빠 2012-05-16 1362
5353 SDCARD 영역에 App 설치 히히히 2012-05-16 810
5352 DMA 컨트롤 관련 문의 드립니다. [3] 개그맨 2012-05-15 1693
5351 LCD가 256 컬러 처럼 나오는데요... [2] 현쓰 2012-05-15 1595
5350 bootargs에서 mem은 정확히 무엇을 하는 것인가요? [2] 혜민아빠 2012-05-14 1150
5349 s3c24X usb host [1] kingdomy 2012-05-13 1418

사용자 로그인