Połączenie przez Socket

0

Taki mam problemik. Robię sobie takie małe coś, żeby w sieci lokalnej (dwa komputery), kiedy jeden użytkownik skopiuje coś do schowka systemowego, pojawia się to w schowku na drugim komputerze.

Przykładowy kod klienta:

Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IPEndPoint EndPoint = new IPEndPoint(IPAddress.Parse("192.168.0.10"), 6666);

            try
            {
                Socket.Connect(EndPoint);
            }
            catch (Exception)
            {
                Console.WriteLine("Connection error.");
                
            }

192.168.0.10 to adres mojego komputera w sieci. Problem w tym, że drugi komputer jest połączony w nieco nietypowy sposób. Otóż komputer uzyskuje połączenie od routera za pomocą tetheringu USB przez smartfona z androidem połączonego z wifi.

Jeśli ja stawiam serwer, a drugi komputer jest klientem, łączy się ze mną bez problemu po moim adresie IP. Kiedy jednak serwer jest po tamtej stronie, nie mogę uzyskać połączenia.

Router mówi, że tamten drugie urządzenie (chyba smartfon) ma przyznane IP: 192.168.0.11. W samym komputerze IPConfig wyrzuca 192.168.2.1 ale żaden z tych adresów nie bangla.
Wywala coś takiego:

Exception:Thrown: "Nie można nawiązać połączenia, ponieważ komputer docelowy aktywnie go odmawia" (System.Net.Sockets.SocketException)

A ja jestem dupa wołowa w tym temacie i po raz pierwszy robię cokolwiek na socketach, więc może próbuję wbijać gwoździe śrubokrętem :/

0

jeśli oba komputery nie leżą w tej samej sieci i nie zrobisz na AP reguły forwardujacej pakiety z któregoś portu, to fizycznie nie ma możliwości nawiązania połączenia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1