Its not my fault, if u follow similar steps and stuff is not working for you. All i have here,
is according to my personal desires and plans. I mean this might not fit you at all specifically,
but in general might be helpful when u desire to host essential services right yourself in your
home itself with whatever hardware resources u have. Happy Hacking !
WHAT IS SELF-HOSTING ?
Present communication networks depends heavily on information routing strategies compiled from
innovative and efficient ideas manifested as protocols and logical stacks. A service comprises
functionality of both hardware and software. The underlying physical infrastructure of the device
providing the required service is facilitated by the hardware - which we can call as a Node
Computer. Software that defines the logic required for the service runs on this
physical infrastructure. This constructs a virtual world of computing which has defined boundaries.
Within this construct individual's communication and content organization has to be met without
compromising much on performance and if possible power & storage. Thus a service depends on following
parameters:
Storage Consumption
Processing & Memory requirement
Power Consumption
Ease of Deployment
Usability of Service
Organizing Mechanism & Policy
WHY SELF-HOST ?
From a individual's perspective communicating with other peers requires content generation, organization
and sharing platforms. These platforms are realized by the services. When these services are self hostable
in one's spare desktop computer or laptop, then the individual is essentially becoming "independent" of
typical centralized services. But being independent of those services also mean disconnecting from a lot of
peers and friends who are already deeply hooked up to "free of money" services. This demands a social
change which is essentially a change in thought process that would drive them to tryout self hosting and
peer to peer, community communications networking infrastructures.
There is a significant amount of people who are already trying this out contacting them for help and hanging
out becomes the first step in the process. This can be handled in civil clubs, communities, societies as an
organized means of community effort to motivate the peers to switch from centralized services to self hosted,
decentralized services. This transition happens by enlightening the peers about positive things that are
possible and guiding them what they have compromised with existing central services. This not only makes them
mobilize them towards a open, decentralized, shared self hosting strategy, but also immobilizes the penetration
of centralized services slowly and steadily.
Networked Independency:
After getting a social mass (a peer set of people), say in a community with the help of available free software
stacks it becomes relatively easier day by day to instantiate services that can be deployed at individual level.
This makes the individual to use their personal computers as a instrument of content generation, organization,
communication in addition to simple productive and entertainment usage. This makes communication and information
as part of digital culture.
On the other hand, we know that self hosting also means, one is centrally dependent upon individual level and
actually gravitates the individual to monitor & maintain the service to reduce down times and centre point of
failures. This is where again the community comes in place. Since every individual knows that individually
they are isolated and becomes points of failure, and thus innovative community communication network needs to be
setup through which they can share the instances of the services and content, which merely gets copied and rerun
in other nodes. Thus sharing emerges from independency and network. This is an emergence that founts out of need
and is a complex phenomenon. Such a network is more organic.
Decentralization:
Eradicating centralized control, filtering, dependency has already gained momentum. Communities are making much
effort in developing Peer to Peer tools, technologies, frameworks, software stacks that essentially make the user
as independent as possible from the grip of big businesses and governments. This can be achieved by attacking the
centralization problem in two ways simultaneously :
Changing the fundamental network architecture
Changing the web architecture
Self hosting actually addresses the second part of the solution. By self hosting the required services using
simple wall wart devices or spare computers will not change the fundamental hierarchical addressing way of internet.
But it addresses the problem in the web layer. Even though data packets goes through the conventional network
topology mostly governed by ISP's, Government filter agencies, Telecom Corporations - that enable the actual routing
of information between peers, selfhosting essentially makes the user independent of the services which they rely on.
But it offers a good entry point to establish community communication infrastructure. It offers a good platform to
test and run newer protocols that help the network immune to intrusion and exploitation.
HOW TO SELF-HOST ?
Once it is decided to be independent of typical centralized services provided in exchange of personal data and
information to some governments and big business conglomerates - one has to come up with a list of services
that they are already dependent upon. This list helps book keeping and organizing the service platforms. These
services can be monitoried that enables the individual to switch them on or off depending upon their reqruirement.
I will focus on what are my desired list of services that i like to host myself in my spare laptop, and see if i
can comeup with basic explanation that help manage myself and collaborative help i could get from my peers who have
similar interests. Depending upon the requirement and availability of open service stacks, several possible similar
integrations are possible. The community have also take into account of common requirements that are fundamental
for reliable addressing, identification, and access.
Eventhough Internet has been primarily emerged to serve as a platform of liberty, soon its
structural implementation influenced by pragmatic technological & management boundaries made
the implementation depend upon identification of devices connected to each other following
common protocols. Thus every devices connected to internet, needs to be identified -- which
is being implemented in a hierarchical manner. That is where IP addresing schemes, and IANA comes into picture. Although the devices can be identified logically, services needs
to be identified that emerge out of computation and networking of computers. Domain Naming Systems(DNS) are found for building such purpose.
Since the IP address might change arbitrarily, we require a name that uniquely attaches to
a service running in one or more devices. Thus DNS using its hierarchical decentralized
scheme, helps transform the name to the current ip address where the service is currently
running. This sets up a chain of events relating between the internet browsers and the
services.
Since the discussion's goal is self hosting as much as possible, where most of us fall
under the prey of dynamically changing ip addresses at the mercy of Internet Service Providers.
For mortal beings like us who could not afford to buy a Static, reserved IP address from ISP's,
we need some mechanism to connect the registered domain name with the changing ip address
as quickly as possible. Yes !! we have DDNS
that suits our necessity.