[Delphi]Przekierowywanie połączenia

Witam,

niemiałem pojęcia jak to zatytuować więc nazywa się tak jak nazywa:P

Wracając do tematu, otóź może któryś z Was drodzy czytelnicy Wortalu DobreProgramy.com wie jak w Delphi wyłapać połączenie z jakimś IP po nazwie DNS, np. exemple.com i przekierować je na 1.1.1.1?

Polecam zawartość pliku hosts na c:\windows\ - najprostszy sposób

WinPCap - bardziej skomplikowany.

Dokładniej tutaj:

C:\WINDOWS\system32\drivers\etc

Wiem, że to dziwne, ale przedszkole mam już za sobą…

Jakbym chciał użyć hosts to w tytule nie byłoby napisane [Delphi]

Co rozumiesz pod pojęciem “wyłapać”? Chcesz pośredniczyć w połączeniach? Jeśli tak, masz dwie opcje. Pierwsza: napisać program działający jako proxy (tylko że nie mam pewności czy poza IE jakakolwiek przeglądarka wyszukuje proxy w sieci lokalnej - AFAIR zarówno Opera jak i Fx wymagają ręcznego ustawienia proxy). Druga: tak jak pisał [alex] użyć WinPCap. Nie wiem czy jest bindowanie API do Delphi, ale prawie na pewno znajdziesz coś na sieci.

Mogę się mylić ale aby zrealizować coś takiego trzeba by się “wpiąć” jako protokół sieciowy. Zdaje się że do tego wymagany jest sterownik, a takowych w Delphi pisać nie można. Programuje w tym środowisko od ponad 10lat, ale czegoś takiego nigdy robić nie próbowałem (co najwyżej forwarder portów) i 100% pewności nie mam.

A tak btw. to pachnie to jakimś phisingiem :wink:

Tak, mylisz się - patrz powyżej.

W jakiej kwestii? (zawsze czytam topic przed napisaniem czegoś :stuck_out_tongue: )

Jasne że można to zrobić na zasadzie proxy (i wtedy w Delphi bez problemu - choćby przez Indy), tylko wtedy wymaga to interakcji ze strony usera i przekonfigurowania danej aplikacji tak by go używała. Wychodzę z założenia że ma to być max. przeźroczyste (coś jak hosts).

Przeważnie jest to za mało, warto też poczytać co inni odpowiedzieli. Poczytaj na temat WinPcap oraz Packet32 komponenty MagSock - czysty VCL ze źródłami.

To miałem na myśli. Dobra, dajmy spokój z tym offtopic’em.