VPN-Paketumgehung

8

Ich arbeite daran, ein simuliertes VPN zu erstellen (erstellt keine echte Verbindung zum Server), um alle eingehenden und ausgehenden Netzwerkbytes (Informationen) zu erhalten.

Jetzt kann ich Pakete bekommen und sie analysieren. Was ich zum Beispiel bekomme:

IP-Version: 4 Kopfzeilenlänge: 20 Gesamtlänge: 60 Protokoll: 6 Quell-IP: 10.0.2.0 Ziel-IP: 5.20.5.59 Hostname: clients4.google.com

Ich würde gerne wissen, wie und was ich tun soll, um Verbindungen zu Websites / Anwendungen herzustellen (für den Moment verbindet es sich nicht).

Auf dieser Website schreibt Ссылка , dass diese Schritte erforderlich sind:

  1. Erhalte IP-Paket von TUN. Genauso wie alle VPN-Dienste.
  2. Extrahiere die Informationen der Schicht 4. Protokolltyp (z. B. TCP / UDP) und seine Nutzlast ist ein Muss. Da es in TCP eine Handshake-Prozedur gibt, vorher um tatsächlich Nutzlastdaten von ihm zu erhalten, müssen wir zurückschreiben Handshake-Paket zuerst.
  3. Wählen Sie den entsprechenden Socket, um die Payload zu senden. Wie dieser Schritt ist Arbeiten auf Schicht 4, also müssen wir den Sockel speichern und versuchen zu bekommen Daten später zurücksenden. Wenn Rückgabedaten vorhanden sind, müssen wir bestehen diese Pakete zu TUN.
  4. Holen Sie das Paket aus dem Socket und erstellen Sie ein Layer 3-Paket. Zuerst brauchen wir um ein gültiges Layer-4-Paket aufzubauen. UDP ist ein bisschen einfacher als die 4 Byte Der UDP-Header enthält nur Quelladresse, Quellport und Ziel Adresse, Zielhafen. TCP ist komplexer als es ist ein Zustand
  5. Verbindung sollte die Sequenznummer und die Bestätigungsnummer sein richtig eingestellt. Verwenden Sie dann das Layer-4-Paket als Payload, das müssen wir Erstellen Sie ein gültiges Layer 3-Paket. Schreibe IP-Paket zurück zu TUN. Gleich wie alle VPN-Dienste.

Bei Schritt 2 erhalte ich Informationen aus dem Paket. Aber nicht im Unklaren, wie es weitergehen soll. Vielleicht kann mir jemand das im Detail erklären. Plus vielleicht kann mir sagen, wie man den Zielhafen bekommt, wenn ich seine IP-Adresse habe. Auch dort ist der Code:

%Vor%     
CikLinas 27.07.2014, 10:38
quelle

1 Antwort

0

Ändern

%Vor%

bis

%Vor%

Ich kenne die Antwort nicht und erkläre, was passiert ist, aber ich habe in Android Monitor gesehen, dass wir localhost (127.0.0.1) nicht in Serveradresse verwenden können.

Es gibt ein anderes Problem mit SSL über HTTP (HTTPS). Wenn Sie auf einer Website wie Ссылка eine Verbindung herstellen, funktioniert das zwar, aber wenn Sie versuchen Ссылка arbeitet nicht.

    
Gorio 03.06.2016 16:24
quelle

Tags und Links