문제
C#에서 작은 HTTP 서버를 만들려고하지만 IPv6 클라이언트에 문제가 있습니다. 내 컴퓨터에 IPv6 지원이 있지만 청취 소켓을 만들려고 할 때 실패합니다.
Log("Creating server socket on port {0}", LogType.Info, _port);
_serversocket = new Socket(AddressFamily.InterNetworkV6, SocketType.Stream, ProtocolType.Tcp);
_serversocket.Bind(new IPEndPoint(IPAddress.Any, _port));
_serversocket.Listen(10);
여기서 내가 뭘 잘못하고 있니?
코드는이 예외를 던졌습니다. 시스템은 통화에서 포인터 인수를 사용하려고 시도 할 때 유효하지 않은 포인터 주소를 감지했습니다.
편집하다:
스택 추적 :
at system.net.sockets.socket.dobind (endpoint endpointsnapshot, socketaddress socketdress) system.net.sockets.socket.bind (endpoint localep)의 troutserver.trout.start (int32 port)의 c : user chris documents. Visual Studio 2008 Projects Troutserver Trout Trout.cs : 라인 62
유형은 socketexception입니다
해결책
노력하다:
new IPEndPoint(IPAddress.IPv6Any, _port)
제휴하지 않습니다 StackOverflow