2011-01-12 8 views
0

3 개의 다른 IP 주소를 가진 3 개의 다른 NIC가있는 서버가 있습니다. 작은 소켓 프로그램을 작성하여 메시지를 전송하는 데 사용할 NIC를 선택하고 싶습니다. 나는 그것이 가능하다는 것을 알고 싶습니다. 아니면 단지 하나의 NIC 만 사용할 수 있습니까?동시에 여러 개의 NIC를 동시에 사용할 수 있습니까?

내 소켓 서버는 웹 서버입니다 (물론 포트 80에서 실행 중이며 인터넷을 통해 액세스 할 수 있습니다). 소켓 (C#)을 만들고 웹 서버에 요청하기 전에 내 IP 주소 중 하나를 바인드합니다. 불행히도 운이 없다. 요청을 보낼 수 없다.

업데이트 : Windows의 경우 동시에 여러 NIC를 동시에 사용할 수 있습니까? IP를 소켓에 바인딩하려고 시도했지만 단 하나의 IP 만 작동합니다. 각 개인은 다른 사람이 무능 할 때 잘 작동합니다. 나는 이것을위한 해결책을 고대하고있다. 감사!

귀하의 조언을 매우 진심으로 감사드립니다. 감사합니다.

답변

1

이 답변은 C와 관련이 있지만 C#과 비슷해야합니다.

컴퓨터에서 소켓을 바인딩하기 전에 연결된 주소 목록에 대한 포인터를 반환하는 getaddrinfo()을 호출하십시오. 그런 다음 거기에서 어느쪽에 묶을 지 선택하십시오. 귀하의 다른 NIC의 주소가 거기에있을 것입니다, 그래서 당신이 원하는 하나를 선택하고 바인딩합니다.

편집은 :이 SO 질문은

Choose one of many Internet connections for an application

+0

감사합니다 귀하의 답변을 codenoob 도움이 될 수 있습니다. 그것은 나를 위해 정말로 도움이된다. – ofecrpnr

관련 문제