リッスンを開始するアダプターを指定するにはどうすればよいですか?
異なるサブネット上で2つのネットワークアダプターが実行されているPCで実行されているアプリケーションがあります(1つはビジネスLANインフラストラクチャ用、もう1つはTCPカメラ用)
TCPサーバーを開き、LAN上のクライアントからの接続を特定のポートでリッスンするクラスがあります。
問題は、TCPサーバークラスが初期化され、カメラに接続されているアダプターでリッスンを開始することです。ビジネスLANからの接続要求はすべて失敗し、処理されません。
問題は、リッスンを開始するアダプタをどのように指定できますか?
以下のコードの抜粋(これは完全なクラスではなく、主要なメソッドのみです)
Public Sub New(ByVal Name As String)
'get config
_bootStrap = New TCPServerBootstrap(Name)
'start log file
_Trace = New ACS.Utility.Logging("Connectivity." & Name & ".TcpServer." & _bootStrap.Port)
_Trace.WriteLog("TCP Server Starting")
Dim LocalIP As System.Net.IPAddress = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName).AddressList(0)
_myListener = New TcpListener(LocalIP, _bootStrap.Port)
_Timer = New System.Timers.Timer
_Timer.Interval = 500
_Timer.Enabled = False
_name = Name
_details = _myListener.LocalEndpoint.ToString
End Sub
Public Sub BeginListening()
'Starts the listener and uses the Asynchronous 'Begin' method to handle inbound connection attempts
_Trace.WriteLog("Begin Listening on: " & _myListener.LocalEndpoint.ToString)
_myListener.Start()
_myListener.BeginAcceptSocket(New AsyncCallback(AddressOf HandleIncomingConnectionRequest), _myListener)
End Sub