i am learning networking and vpn technologies now and i have some problems with understanding the whole PPTP encapsulation process. So i will write steps of PPTP encapsulation process (as i understand them) and below i will write questions to this process:
- client and server establish tunnel for managing connection.
- client and server establish tunnel for messaging over TCP, port number 1723 (this stage seams to be clear, but correct me if there are mistakes)
- tunnels are established and client is going to send some data, let it be HTTP query for example. I have red (i dont remember, where), that next there are following steps (4-7):
- client's software is going through data from upper layer of OSI model to lower layer to make PPP's information part.
- then software is making reverse process: going from lower layers and encapsulating each level of OSI model with upper layer protocol.
- the whole packet is being encrypted and encapsulated to PPP header.
- PPP header is encapsulated to IP header using GRE and the final packet, which is gonna be send to the PPTP server looks like: [IP header][GRE header][PPP header][encrypted data]
So the questions are:
- First of all please correct me if i have mistaken in PPTP connection establishing and data sending process
- Step 1: is this managing tunnel is just some notes in server's/client's software and this tunnel doesn't work over TCP/UDP?
- Step 5: why we need this part? Why we cant encapsulate on the step 3.1?
- Step 7: how we send this packet from client to his router (for example), if there are now info in PPP header about mac addresses?
Sorry for very silly questions, but i was googling for few days and i haven't found answers to my questions and i quietly losing my mind...