Top products from r/darknetplan

We found 22 product mentions on r/darknetplan. We ranked the 44 resulting products by number of redditors who mentioned them. Here are the top 20.

Next page

Top comments that mention products on r/darknetplan:

u/ttk2 · 31 pointsr/darknetplan

So there's a lot of ground to cover here.

There is no single 'meshnet' protocol. There are many different attempts often with widely different properties and goals.

So any answer I can give to these questions will come with caveats and references to specific implementations.

> Will this completely eliminate the need for ISP's?

I'm going to break this question down into several inherent problems and go over how different systems try to address those problems.

Replace the existing internet? With what?

CJDNS and Yggdrasil are the two biggest 'meshnet' projects, they focus on replacing the prefix based routing of the existing internet with a more open system. Lets explore why.

What is prefix based routing? You can think of it like addresses.

172.125.0.0/16 is a prefix, specifically the first 16 bits of an ipv4 address, sort of like how a City contains many thousands of homes this prefix contains 2^16 or 65536 addresses.

A bigger prefix might be 172.0.0.0/8 which contains 2^24 or 16777216 addresses.

A smaller prefix might be 172.168.1.1/24 which contains 2^8 or 256 addresses

You can think of bigger prefixes like cities or nations and smaller prefixes like towns, streets, and eventually houses.

Much like real addresses you don't get to chose your ip address, not even as an ISP. They are assigned by ARIN which is the organization responsible for assigning ips in North America. They are a subset of ICANN who handles global assignments.

The definition of an ISP on the existing internet is literally 'someone who has a autonomous system number assigned by ICANN or one of it's subsidiary organizations'

Despite this to say ICANN 'controls the internet' is disingenuous

If ICANN revokes an assignment nothing really happens, but various ISP's who trust ICANN will eventually change their machines to match what ICANN says. It's as much a political process as a technical one.

What I want to highlight here is that the internet as it currently works is operated by people, routes are hand configured, connections are hand made. While technically anyone can become an ISP it's expensive, complicated, and easy for a human in the process to censor. Connections are made behind closed doors and in private meetings, it's an 'open' network in a very limited sense.

Real technical limitations created this system, for all it's flaws prefix based routing is incredibly simple and efficient.

With this background you can understand why what CJDNS and Yggdrasil want to do is important. They are trying develop new routing systems that are as efficient as prefix based routing without the need for ICANN or any technical knowledge to supervise the creation of new routes. This is a lot of what people imagine 'mesh' as a plug and play system that just works.

Physics, the elephant in the room

Ok so CJDNS and Yggdrasil actually succeed at what they are trying to do, we have another problem.

The internet is a low latency network! To allow for voice and video chat as well as gaming we need to move messages incredibly quickly around the world.

The physics of low latency communication make it impossible to create a decentralized network at a large scale that still maintains low latency.

If I talk to my friend in San Fransisco from my home in Florida we can look at the path this message takes over the internet.

traceroute to exit.altheamesh.com (64.71.176.93), 30 hops max, 60 byte packets
1 _gateway (192.168.0.1) 2.324 ms 2.245 ms 2.566 ms
2 96.120.37.77 (96.120.37.77) 13.755 ms 13.687 ms 14.638 ms
3 xe-1-0-3-sur02.tequesta.fl.pompano.comcast.net (162.151.114.237) 13.405 ms 14.376 ms 18.940 ms
4 ae-17-ar02.stuart.fl.pompano.comcast.net (162.151.2.161) 20.093 ms 23.090 ms 23.125 ms
5 be-40-ar01.northdade.fl.pompano.comcast.net (68.86.165.161) 32.971 ms * 33.713 ms
6 be-20214-cr02.miami.fl.ibone.comcast.net (68.86.90.205) 25.363 ms 34.216 ms 32.835 ms
7 be-12297-pe03.nota.fl.ibone.comcast.net (68.86.82.70) 43.925 ms 50.557 ms 50.370 ms
8 10ge9-1.core1.mia1.he.net (216.66.64.149) 49.413 ms 50.135 ms 50.551 ms
9 100ge2-1.core1.hou1.he.net (184.105.222.110) 85.309 ms 84.359 ms 85.452 ms
10 100ge11-2.core1.dal1.he.net (184.105.213.53) 86.127 ms 86.365 ms 52.366 ms
11 100ge2-2.core4.fmt2.he.net (184.105.64.221) 93.098 ms 92.087 ms 92.853 ms
12 100ge4-1.core3.fmt2.he.net (184.105.80.182) 93.105 ms 86.406 ms 101.115 ms

My message goes south hitting bigger and bigger nodes until it reaches Miami, where it leaves Comcast's network to be handed off to Hurricane Electric. It then goes from Miami, to Houston, to Dallas, and finally to Fremont.

Notice my message goes to progressively larger exchange centers for 7 hops, traveling only a few hundred miles south. Then it exchanges onto the backbone between hops 7 and 8 (both of which are in the same building) before traversing the entire rest of the continent to California in only 3 hops.

This is the power of what's commonly known as 'seven degrees of separation' and formally known as small world networks.

The same way popular people make social networks have fewer degrees of separation than you would expect large internet exchange centres with ultra-long distance fiber lines make low latency internet possible.

Even using this enormously costly and centralized system my signal makes it to Fremont and back in 100ms, about the minimum amount of time a person takes to notice lag.

If you don't allow for these very very large, centralized nodes with multi-billion dollar infrastructure you have to increase the number of hops, which quickly blows latency out of the water.

This ties into questions 2-5

You can't decentralize networks without giving up the current low latency model of the internet (traversing coast to coast across the US device to device would take upwards of a minute in the ideal case).

So long as networks need big monolithic nodes to maintain low latency a central entity can install monitors on those large nodes and use them to deanonymize anything you want to do.

Take TOR for example, the US has the soft power and resources to monitor all major internet nodes in most countries, therefore they can find just about any TOR user just by looking at the timing on the packets for long enough.

This isn't trivial, probably costs a lot of money, takes a lot of time, and isn't 100% successful, but it's naive to assume it's not at least being attempted. Tor still provides significant protection.

Now remember privacy and anonymity are different things! Centralized infrastructure + low latency precludes anonymity, it is always possible to determine who is communicating with who. But it is not possible to determine what they are talking about.

CJDNS and Yggdrasil do solve a real problems, they provide privacy even in the face of centrally owned infrastructure and could make participating in the internet much easier, more open, and harder to censor.

But since they rely on existing infrastructure to deliver low latency packets like all modern applications expect they are subject to existing ISPs who are unlikely to adopt these systems.

So what's next?

At this point I hope I've given a good summary of the real practical challenges and limitations to these sorts of systems. I didn't get to go into radio design which I touch on here.

But the question is what can we do to productively help achieve the goal of a meshnet?

There are, in my opinion two major routes.

1) Delay tolerant networking

Design programs and systems that can deal with shepherding data across a continent over the course of minutes hours or days. As described in WalkAway (which has excellent mesh networking content, go check it out at your library).

There's a reason CJDNS and Yggdrasil are not already doing this, everything you know, every program, is designed for low latency networks. It's monumental to suggest changing that. Also people like their voice chat, video chat, and gaming. But if we really want the option to Walk Away (see what he did there?) from centrally controlled infrastructure it's a challenge that must be undertaken.

Projects to make a 'decentralized reddit' or 'decentralized twitter' are generally piecemeal versions of this. Which doesn't make them bad, but the lack of coordination and shared grand vision shows.

2) Community ownership of infrastructure

This is what mesh networks like NYCmesh and Guifi. This doesn't solve the issues with the existing internet so much as bring regular people to the negotiating table.

If #1 is plan Walkaway this is plan stick around. It's about improving the internet as it is by taking control of enough infrastructure to make a difference. With incremental improvements in privacy and openness.

If you want CJDNS and Yggdrasil someday replacing prefix based routing, this would be the way to go about it.

I work on Althea which is a project that has set out to build community owned, decentralized infrastructure.

---

I hope this was helpful, let me know if anything is confusing.

u/[deleted] · 18 pointsr/darknetplan

What OS? Linux, of course. When TPB order everything locked down, you don't want to be caught using a Microsoft OS. -- What distribution? The easy path is Ubuntu, with the Cinnamon UI, or LinuxMint 13, when issued (May 2012).

What IDE? There's lots to choose from. My favorite is "geany".

https://en.wikipedia.org/wiki/Geany

For TCP/IP protocol tutorial. Recently updated by Wright:
Stevens, "TCP/IP Illustrated", 3-volume set.

http://www.amazon.com/TCP-IP-Illustrated-Volume-Set/dp/0201776316

On human interface guidelines relevant to programming:

https://en.wikipedia.org/wiki/Human_interface_guidelines

For GNOME 2, see:

http://library.gnome.org/devel/hig-book/stable/

To develop Linux applications:

You are right. You MUST know how to program in C. When others tell you that object oriented programming is the thing, know that you can do object oriented programming in C. Avoid interpreted languages (Python, Java, and others) as a first programming language. Interpreted languages teach bad habits and hid too much of what's going on from you such that debugging becomes difficult to impossible.

However, if all you intend is "casual programming", the Python will do, if you must. It's just not the best choice first a first language if your intent is to become a "professional programmer". I use Python myself; It works for what I need to do quick and dirty.

Definitive, but for experienced programmers:

http://www.amazon.com/C-Programming-Language-2nd-Edition/dp/0131103628/ref=sr_1_1?s=books&ie=UTF8&qid=1335197606&sr=1-1

As a tutorial for someone learning a first programming language and how to program from zero:

Perry, "Absolute Beginner's Guide to C", 2ed.
-- I have not read the book, but the ToC looks reasonable for a beginner.

http://www.amazon.com/Absolute-Beginners-Guide-2nd-Edition/dp/0672305100/ref=sr_1_6?s=books&ie=UTF8&qid=1335197606&sr=1-6

OK, you don't want a full CS curriculum, but some topics in discrete mathematics are mandatory. ... Ack! Having looked over the offerings at Amazon, I believe that Epp, "Discrete Mathematics with Applications" may be the best of the lot, but at $187, it is hard to recommend without knowing your intent and interest. The reason I suggest this title is that it looks focused on application to computer science topics. It covers a number of topics that are NOT covered in many of the other titles, enough so that should you use other texts you will have spent more than the $187 that this title includes. JMHO.

http://www.amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0495391328/ref=sr_1_1?s=books&ie=UTF8&qid=1335199316&sr=1-1

See also: Sedgwick, "Algorithms" -- You'll probably need it sooner than later.

http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X/ref=sr_1_1?s=books&ie=UTF8&qid=1335200153&sr=1-1

Remember that Linux OS? You are going to need some programming tools, right? If you intend to write GUI applications based on the GTK+ toolkit, then install the package "glade" or "glade-gtk". Installing a glade package will suck in over 100 other packages essential to building a GTK based GUI application. Specifying glade to the package manager is just easier that finding and installing all the other necessary parts by hand.

If you are going to do command line based UI programs, then package "build-essentials" should be adequate.

There are some other things to read:

On how to organize, grow and maintain a Linux software development project: Fogel, "Producing Open Source Software"

http://producingoss.com/

You can read it online here, but buy the book too to help support Fogel. He's gotta eat too.

On the culture of writing Open Source Software:

Raymond, "The Cathedral and the Bazaar"

http://www.catb.org/~esr/writings/cathedral-bazaar/

Linux programming is not like Windows programming.
Read and study ESR's TAOP.

Raymond, "The Art of Unix Programming"

http://www.catb.org/~esr/writings/taoup/html/

You can read it online, free. However, buy a hardcopy too. Raymond has to eat too.

Now to get really technical. What interface do you write to?

Kerrick, "The Linux Programming Interface: A Linux and UNIX System Programming Handbook"

http://www.amazon.com/The-Linux-Programming-Interface-Handbook/dp/1593272200/ref=sr_1_1?s=books&ie=UTF8&qid=1335201257&sr=1-1#reader_1593272200

Beginning to focus on GNU style programming:

GNU Coding Standards

https://www.gnu.org/prep/standards/

GNU Coding Standards is more than how to and how much to indent a line or how to set braces. You will get into the topic of Make and Autotools. Make is a program to build complex softare and Autotools is about how to build a package for distribution, the package that any Unix flavor can use; it is not focused on any specific distribution. See also: "configure and make"

Enough! There's more, but I have too much time in this already for today.

[edit: typos]

u/dicarlobrotha2 · 2 pointsr/darknetplan

Yep, a stock copy of windows and a $90 Buffalo Router. That's about it.

The point was to use off the shelf parts and software to make it deploy-able quickly. Once this thing gets going I'm going to work on getting a ready-to-install linux distro based off Ubuntu or something simple like that and build everything (like what you mentioned) into it.

Eventually this will be completely migrated into a Linux format and made available for anyone to rapidly deploy a system like this where they live.

The great thing about my plan for the final product is that only one master node needs to be deployed manually. Using a gPXE bootloader (That's where netboot.me comes in) it'll be easy to install the software right from another node and rapidly extend the network without the need for internet access to get the software.

I've got ideas on how micro-nodes would work into play without large boxes, I mean, this thing is about 18x14x8in closed.

Something along these lines may work:

  • Pico-ITX Mainboard + RAM + Power Adapter: $307 info

  • 40GB SSD for OS: $109 info

  • 1.5TB HDD for Files/etc...: $110 info

  • High Gain Wi-Fi Antenna: $66 info

  • Hardigg-Storm Case: $39 info

    Total: ~$635

    If you think about it this is relatively inexpensive, compared to the original project, which was about ~$1200 in parts.

    And if it's running Linux, it'll run considerably faster considering it's half as powerful. (2.2GHz>1GHz, 4GB>2GB)

    Honestly something like this could be used as a master node if you replaced the Wi-Fi antenna with a router.
u/DevilsWeed · 3 pointsr/darknetplan

As someone with zero programming experience, thank you for the reading list. I was just planning on trying to learn python but I don't know if that's the best language to start with. Would you recommend just reading those books and starting with C?

Also, since I have no experience a technical answer would probably go right over my head but could you briefly explain how someone would go about messing around with an OS? I've always wondered what people meant by this. I have Linux installed on a VM but I have no idea what I could do to start experimenting and learning about programming with it.

Edit: Are these the books you're talking about? Physical Computing, C programming, and Writing Great Code?

u/SoCo_cpp · 2 pointsr/darknetplan

This looks consistent with what my own investigation in preforming the same project led me. I have a similar plan, but need a more suitable antenna. This lead me to looking for an omnidirectional. I looked at several comparable antennas to the one you found. I found them slightly cheaper on Amazon (crap, there was a 15dBi somewhere, this is a 12).
When expanding again, you should note that you can get a 8dBi outdoor omni for less than half the price. Don't forget you likely need a pigtail to convert to SMA

u/malcolmthetenth · 2 pointsr/darknetplan

Yea, it kind of seems like most of us would help the planet by not existing, but I saw something else. Imagine if the world population was now reaching its peak in 2013, but at one billion people instead of 7+. Consumption, pollution, and environmental damage were still growing, but not at toxic levels like they are now. This civilization would not have to learn the lessons we do. They have time. But in the future, the day would still come when they reach disastrous levels. I think I understand what you mean by not knowing what you can do, because it seems like more people is just part of the problem. But beyond the negative impact of just another consumer, we are here to teach us all that the way we've been living is reaching a breaking point. It's not bad that there's overpopulation, it's perfect, because now we have to learn these lessons and evolve. And we can start leading by example by living a lower consumption lifestyle, and showing people we are just as happy.

About the automated and job stuff, I'm also trying to wrap my head around it, stuff like Farewell to Growth, The End of Work. I think once everyone is on board with cooexisting with the environment and lower consumption, we'll be able to handle the questions that come with it, about how we are to live when not everyone has a job.

u/traal · 1 pointr/darknetplan

This problem is easy to fix with a pair of these.

u/nomasteryoda · 5 pointsr/darknetplan

Nice... The controller you posted is unavailable, but a newer version is offered on Amazon.

u/cyberflunk · 1 pointr/darknetplan

You'll get shivers if you read this book:
http://amzn.com/0553386220

Then consider the implications of this post.

u/AmbitionOfPhilipJFry · 2 pointsr/darknetplan

http://www.amazon.com/Collapse-Third-Republic-Inquiry-France/dp/0671203371

Extremely relevant parallels between conservative-liberal squabbles, governments' policies and deadlock, the bipolar government response to conservative v. liberal demonstrations, corporations offshoring jobs and resources, the rich refusing to pay taxes and balancing an impossibly overburdened military budget on the middle class. It was researched and written by the author who wrote "Rise and Fall of the Third Reich", William Shirer. He was an ABC correspondant and historian during the 1930s in France and Germany.

u/PocketPropagandist · 1 pointr/darknetplan

Yeah the end destination of the data in this application is an AWS cloud server, but why couldnt it be your local post office instead? The truck dumps all with addresses in that particular local meshnet (and all those which need transferred to trucks headed other directions), picks up outgoing messages according to its next destination, and keeps on truckin.

The US Postal Service is hurting pretty bad right now. A retrofit of their existing fleet and stations would enable them to carry the packets and parcels of the 21st century - a new product which might sustain an institution once vital to the US democratic system (citation)

edit: too many words

u/MetaMesh · 3 pointsr/darknetplan

second question. yes. you will need an n-type antenna. I recommend this for your project: http://www.amazon.com/Engenius-Outdoor-High-Antenna-EAG-2408/dp/B000VIA4CA

about the 1 mile question. Not likely at all. You can add power to "yell" your signal louder from the WAP but your reception is limited to the size and style of your antenna. that Engenius antenna will work for maybe a block reliably. You can extend your range by having equivalent antennas on both sides of the connection.