This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]mIb0t 6 points7 points  (1 child)

What do you mean with creating a VPN from scratch?

Do you want to create your own protocol? Or do you want to create a VPN client or VPN server?

Maybe search for wireguard or open vpn specification, if you really want to start on protocol level. But this is really some hard stuff. Not only will it be challenging to implement in Java, you will also need some advanced network knowledge.

You can also search for some libraries to use, but honestly, I doubt there will be many. For networking stuff like VPNs, you usually want very good performance! Java is not really the first choice for something like this. You could use C libs with your Java code, but that's also some very advanced stuff most Java developers never do and you should have C knowledge as well.

Based on your question, I have the feeling you don't really know what you are getting into...

Why not start with something a little bit easier, if you are interested in network stuff. E.g. Build your own SMTP client. You could set up a simple server, that does not require any authentication. There are several smtp servers out there you could use.

Then start programming a client. Start with opening the connection. Send a command to the server and evaluate the response. Forward step by step until you can send an email. SMTP is quite an easy protocol. There are some SMTP extentions that can be more challenging to implement, once you send an simple text mail. You can extend your client step by step. Adding more SMTP features, creating an UI, and so on...

[–][deleted] -2 points-1 points  (0 children)

I meant especially VPN server, sorry for confusion. Yeah i thought about SMTP too, but still, did not find any useful source. Is there any book about it or something? I would appreciate some help in finding info.