C에서 클라이언트 작업을, C에서 서버 작업을 개발했습니다. 클라이언트는 서버에 연결하기 위해 서버 IP 주소가 필요합니다. 문제는 다음과 같습니다. 어떤 컴퓨터가 클라이언트를 실행하고 어떤 시스템이 서버를 실행할 것인지 미리 알 수 없으므로 런타임에만 서버의 IP 주소를 알 수 있습니다. 내 질문 : 런타임에 클라이언트가 어떻게 알 수 있습니까? 서버의 IP 주소?런타임시 서버의 IP 주소
답변
클라이언트와 서버 모두 미리 알고있는 타사 브로커 서버를 사용하십시오.
알려진 IP 주소로 어디서든 서버를 설정하기 만하면됩니다. (클라우드 서버를 사용하는 것은 값 싸고 빠른 옵션입니다.)
서버가 시작되면 IP 주소를 브로커 서버로 보내고 클라이언트가 시작될 때 브로커 서버가 연결될 서버를 쿼리합니다.
물론 프로토콜을 작성해야하지만 매우 간단 할 수 있습니다.
의견 작성자가 지적한대로 DNS를 사용할 수도 있습니다. 어떤 이유로 든 DNS 항목을 가져올 수 없거나 서버와 클라이언트가 동일한 네트워크에서 실행되는 경우 일종의 mDNS를 사용하는 것이 좋습니다. 레코드가있는 DNS 서버가 필요하지는 않습니다. 달리기. 소개 개요는 http://en.wikipedia.org/wiki/MDNS#Multicast_DNS을 방문하십시오.
먼저 무엇을 검색 할 것인지 기억해야합니다. 그리고 약간의 문제가있는 경우 DNS를 사용하면 매우 유용합니다 .....
freepastry API를 사용하면 작업 할 수 있으므로 작은 규모의 로컬 네트워크 또는 대규모 (인터넷) 서버를 사용할 수 있습니다. – researcher
서버와 클라이언트가 로컬 네트워크에서 실행되는 경우이 아름다운 MAC 주소를 사용하십시오 : FF-FF -FF-FF-FF-FF ...;) 그러나 이름이 같으면 DNS를 사용하는 것이 가장 좋습니다.
서버가 시작될 때 serv에 호스트 이름을 변경할 수 있다고 말할 수 있습니다. 서버 코드 (C 언어)에서이 작업을 수행 할 수 있습니까? 어떤 컴퓨터가 서버를 실행할 것인지 미리 알지 못하기 때문에 ... – researcher
DHCP 서버는 클라이언트가 네트워크에서 새로운 서버 일 때 여기서 DHCP 서버는 (어떤 IP)이며 서버는 연결을 끊습니다. 서버/클라이언트 모두에서 똑같은 작업을 수행하십시오. –
- 1. Appengine 서버의 IP 주소 블록?
- 2. 클라이언트 및 서버의 IP 주소 검색
- 3. MAC 주소 (IP 주소 :
- 4. 프록시 IP 주소 뒤의 추적 IP 주소
- 5. 서버 IP 주소 받기
- 6. IP 주소
- 7. DNS와 IP 주소 이해
- 8. 클라이언트의 IP 주소/MAC 주소
- 9. 코코아 응용 프로그램의 IP 주소
- 10. 도메인 이름 서버 IP 주소
- 11. NIO.2 서버의 클라이언트 IP 주소 목록 얻기
- 12. PHP에서 서버의 호스트 이름 또는 IP 주소 받기
- 13. 자바 스크립트에서 서버의 웹 사이트 URL의 IP 주소
- 14. 채팅 사람의 IP 주소 확인
- 15. IP 주소 변경을위한 입력 상자
- 16. Apache 프록시 - 업데이트 IP 주소?
- 17. IP 주소 목록에서 IP 주소 범위를 찾는 방법
- 18. 두 IP 주소 사이의 IP 주소 목록 얻기
- 19. 추적 IP 주소
- 20. 아이폰에서 IP 주소 찾기
- 21. 원격 IP 주소 정보
- 22. Grails에서 IP 주소 받기
- 23. 글로벌 IP 주소 받기
- 24. 바인딩 IP 주소
- 25. 안드로이드 태블릿 IP 주소
- 26. Lighttpd 프록시 IP 주소
- 27. 사용자를위한 IP 주소 저장
- 28. 자바가있는 Android IP 주소
- 29. 숨기기 IP 주소
- 30. Python에서 IP 주소 추적
대신 DNS 항목을 사용하지 않으시겠습니까? IP 주소로 구성 할 수 있습니까? –
[DNS] (http://en.wikipedia.org/wiki/Domain_Name_System)? –
아이디어를 더 자세히 설명해 주시겠습니까? 도와 주셔서 대단히 감사합니다 – researcher