원격 포트가 열려 있거나 차단되어 있는지 확인하기 위해 포트 쿼리 응용 프로그램이 있습니다. 내가하고 싶은 일은 포트 검사를 할 때 로컬 컴퓨터에서 트래픽을 보낼 네트워크 인터페이스를 선택할 수있는 기능입니다. 이것이 가능한가요, 어떻게 그렇게 할 수 있습니까?프로그래밍 방식으로 네트워크 인터페이스에서 데이터 보내기
업데이트 :
나는 다음과 같은 라인을 추가하고 여전히 소켓을 사용하는 가정
string localip;
localip = interfacesComboBox.Text;
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.ReceiveTimeout = 1000;
IPAddress myIP = IPAddress.Parse(localip);
socket.Bind(new IPEndPoint(myIP, 0));
...이 코드의 대부분은 중복입니다. 특정 인터페이스에 바인딩하기 위해서 필요한 것은'.Bind (새로운 IPEndPoint (addresOfEndpoint, 0))'뿐입니다. '0'은 시스템이 사용 가능한 포트를 자동으로 선택하도록합니다. –
@MattiVirkkunen - 이것이 사실일지도 모르지만이 코드는 선택적으로 사용자가 ** 묶고 싶은 일련의 포트를 지정할 수있게합니다. 필연적으로 요구 사항은 아니지만 제 응용 프로그램에서 잘 작동합니다. –
@MattiVirkkunen, 나는 당신의 방법을 시도했다 : 그것은 작동하지 않는다, 나의 이더 네트 공용 영역 및 나의 WiFi 아닙니다에서 아직도 전달하고있다 'string localip; localip = interfacesComboBox.Text; 소켓 소켓 = 새 소켓 (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); socket.ReceiveTimeout = 1000; IPAddress myIP = IPAddress.Parse (localip); – KPS