2012-06-24 6 views
4
여기

내 문제입니다 :부스트 ASIO의 iostream은 - 로컬 IP 주소를 가져 오는 방법을

boost::asio::ip::tcp::iostream s(IP, "1237"); 

그리고 지금 : 나는 서버에 연결하는 부스트 :: ASIO :: IP : TCP :: iostream을 사용하고 내 로컬 IP 주소를 검색하고 싶습니다. Google 어딘가에서 socket으로 처리하는 방법을 찾았지만 스트림은 어떤가요? tcp :: iostream은 소켓 상단에 구축되었으므로 다음과 같아야합니다 : s.local_endpoint(). address() 그러나 Google과 duckduckgo로 긴 검색을 한 후에는 아무런 단서도 발견하지 못했습니다. 해. 나는 몇 가지 가장 명백한 순열을 시도했지만 여전히 운이 없다. 그래서 간단한 방법이나 소켓을 사용해야합니까? 중요한 경우 Linux에서만 작동해야합니다.

+1

호스트에 IP 주소가 하나만 있다는 오해가있는 것 같습니다. – Juliano

+2

질문은 여전히 ​​유효합니다 : 로컬 호스트의 모든 IP 주소를 * 어떻게 검색 할 수 있습니까? –

답변

1

Linux를 사용하는 경우 getifaddrs(3)을 사용하여 로컬 시스템의 인터페이스 목록을 가져옵니다.

+0

응답하기 전에 응용 프로그램의 동작을 변경 했으므로이 질문에 대해서는 잊어 버렸습니다.하지만 대답은 그 것입니다. :) –

관련 문제