Does purely P2P applications exists in a world where hosts lies behind layer(s) of NAT?

Does purely P2P applications exists in a world where hosts lies behind layer(s) of NAT?

I was searching about making a P2P program and I found that all techniques in order to hosts behind nats to communicate are by using some kind of server in between them (techniques like UDP/TCP holepunching). So my question is, is there any way (except by using ipv6) to establish a p2p network over the internet that doesn't require some sort of server to start the communication between the peers? I mean, a network that is BY DEFINITION P2P?

Attached: como tomar um chá.jpg (500x414, 64.23K)

Yes, use ipv4 and accept there is a server between you and your targeted peer that can fuck with your traffic and is called a ISP. Encrypt and authenticate the p2p traffic and then send it to the target ipv4/ipv6 adress and accept there is a server that can MITM the traffic at every hop between you and your peer. Unless you want to use something like long range radio and send data over it, but that is illegal worldwide since the communication from said wave's are not automatically captured and stored like the rest of the internet traffic via ISP on fiber/sattilite/dialup/cellular radios/broadband. A radio not using said frequencies/methods of communication would bypass the automatic stealing and sorting of all your data/information as it is illegal worldwide for that very purpose. Things like Tox and IPFS are as P2P as it gets without bypassing the entire data collection botnet via a different way of transfering data such as radio or sneakernet.

Many forms of radio are susceptible to mitm attacks.

No, you'll always need something like a STUN server for the worst cases. Some lighter forms of NAT and ones with cooperative routers don't require a third party, though. Modern P2P networking stacks have dozens of ways they try to mitigate all the different types of damage that middleboxes have caused.
If you mean for an initial randevu, anycast addresses exist and are in use for things like 6to4, but generally unless you're a billion dollar company that peers everywhere you'll need to hardcode a few superpeers to get everything started.

What's wrong with UPNP port forwarding? I've seen it used by bittorrent.

Even P2P radio can be captured and decrypted.

NAT is the biggest, most annoying cancer in the way of true P2P. Every time I have tried to make some kind of P2P program, it has failed because of NAT. NAT punching is non-standardized and requires additional configuration of the router in most cases, which normalfags and morons refuse to do.
IPv6 is also fucking cancer. The addresses are too long and impossible to remember unless you get some kind of mnemonic address, which is limited to 6 letters of the alphabet + 1337speak - and you also have to pay your ISP or whoever to get a custom address, probably.
The solution is to get the turd world off the internet. India, Israel, Mexico, Afghanistan, Pakistan, Africa... none of these shitholes have ever brought anything useful to the internet besides tech support and nigerian prince scams, ISIS decapitation videos and "SEND BOBS AND VEGANA". Additionally we should get rid of (((Internet of Things))) for obvious reasons. With these measures, the Internet will be cleansed of a great amount of filth, as well as regaining enough IPv4 addresses for useful people.

Attached: 316a737f4ffff2194a48dafa4219985b69202014b30a3b3371379e20840a1237.png (240x265, 77.8K)

...

Attached: 9f309606bfaabde04aead08bc97e5edffab16f211a91fa3533c25781fcd13615.png (1238x1080, 355.16K)

Holy shit. Textbook strawman, bro.

Attached: 75fd268046732b5dc0333f9b1959872b1e4de01abfb8f67c30276652e5ca24c6.png (823x549, 284.07K)

I propose that instead we limit IPv4 to real countries and give IPv6 exclusively to third world shitholes.

I never remember the v6 addresses in my LAN. I always refer to the domain name system service in order to reference individual computers.

Which part of you bitching about them being 2 long is a straw man?

Line of sight, tight beam cannot be intercepted without either party knowing.
Problem is, it requires nice optics for long distance communication.
Moving targets are completely feasible using GPS coordinates to rough aim, and simple electronics to fine adjust.

From there, you could easily use existing encryption schemes to protect traffic.
All of this can be done with current garage quality tech.

If NAT is so difficult to use, why don't you just NAT the shitskin countries?

Attached: 812ef4bdc001103a0720d3c126cc785e7e3b8a57a372021137fb39c84aca12ce.gif (700x298, 3.67M)

jej.
Check fresnel zones. You can listen in the third one without even making a dent on the receiving power.

Are you asking whether two hosts on a network can communicate with each other without their traffic passing through any other host?

Isn't i2p what you are looking for?

No, he's asking whether two hosts on a network can both initiate communication with each other, without a dedicated third party (which is not part of the internet's infrastructure).
With NAT this is impossible.

CJDNS does this with IPv6, fully encrypted tunneled traffic from point to point. Of course you can still set up a node with NAT behind it but you can also just be pure P2P. NAT isn't all that bad if you know what you're doing and implement it well.


NAT is useful for creating firewalls and generally hiding your own personal network from peers. It's not cancer, you're just not using it properly.


Who the fuck wants normalfags and morons on their 1337net fucking normalfag moron


What is DNS?

>>The solution is to get the turd world off the internet. India, Israel, Mexico, Afghanistan, Pakistan, Africa... none of these shitholes have ever brought anything useful to the internet besides tech support and nigerian prince scams, ISIS decapitation videos and "SEND BOBS AND VEGANA". Additionally we should get rid of (((Internet of Things))) for obvious reasons. With these measures, the Internet will be cleansed of a great amount of filth, as well as regaining enough IPv4 addresses for useful people.

IPv6 should be for WANs and IPv4 should be for LANs in the future, I can't wait to have more reserved internal IPv4 addresses so I can have IPv6 nodes with IPv4 NAT/Tunneling


For any of you competent people out there that'd like to start a private network for shits and giggles I'd be down for that

It doesn't 'just werks'. at least not the libs for c++ that I found about it
btw bittorrent also use stun server to kickstart the communication so nah

also it is clearly not enough to solve the problem of p2p programming, you obviously is trying to trigger me again with the indirect comments

He didn't make this clear, which makes it look like he's ignorant of the fundamental operation of the internet. It's a poorly framed question.

I2P is interesting though I never dig into it. Will it solve the NAT problem?

It can be done in small networks.
You can have a fully connected mesh, but you need to know one thing, the amount of connections needed follows this equation c = (n(n-1))/2
As you can see, you need 120 cables to connect 16 machines. it's just too much.
I think it might be possible with wireless but this means that anyone on the range of your antenna could try to connect directly to your machine, and we'd need to nuild more robust wifi cards, because currently, all they need to handle is only one connection, imagine having MIMO wifi modules capable of handling more than two simultaneous connections. That's practically integrating an entire wifi AP into the hardware.

...

Why would you ever want a direct link to someone? It's not feasible. Having a single cable going somewhere is meaningless and this isn't even theoretical. If you want this for security purposes someone can just splice your wire and capture/replace all traffic (since your wire goes across the entire world you wont notice).

I would REEEEEEEEEEEEEEEEEE if my ISP did that

I hosted an alternative open tibia server and a website in 2006/7 with no problems

If they splice my cables believe me that I will notice, if they splice the cables beyond my router, it's as useful as getting the same encrypted data from the ISP which they can get with zero effort, what's your point?