🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #216798

Re: Aplikacja rozproszona a adres IP

#216798
From: heby
Date: Wed, 15 Jan 2020 17:07
65 lines
3663 bytes
On 15/01/2020 14:51, Borneq wrote:
> - wielu dostawców zmienia IP klienta, chyba minimalny czas na jednym IP 
> to 24h lub czas połączenia

Do tego są usługi Dynamic DNS, np. duckdns.com. Wiele routerów ma wprost 
do nich wsparcie.

> - jest tłumaczenie adresów NAT, jeden IP może odpowiadać wielu użytkownikom

To załatwia się przekierowaniem portów z sieci wewnętrznej na zewnątrz.

Obie techniki w 99% wprzypadków są wystarczające aby dostać sie do 
usługi z dowolnego miejsca na świecie.

1% wypadków to nieszczęścia takie jak "dostawca nie ma publicznych IP" 
albo "dostawca uznał że taki a taki zbiór portów/ipków jest a fuj".

> jak w taki sposób napisać serwer? mogę mieć 192.168.0.1:port

Przekieruj ten port na routerze i uruchom na routerze usługę dynamic dns.

> ale jak wyjść na świat? będzie zewnętrzne ip i ten sam port, a drugi 
> komputer? czy też zostanie przetłumaczone to na inny port, wtedy jak 
> łączyć się z innym?

Przekierować można dowolny port z sieci wewnątrznej na dowolny port IP 
publicznego.

> Może będę mógł zainicjować połączenie jako client 
> ale nie będę mógł być dostępny z zewnątrz?

Każdy na świecie będzie mógł się połaczyć na port na Twoim publicznym IP 
pod adresem foo.dyndns.com i zostanie to automatycznie przekierowane do 
środka sieci na maszynę 192.168 na wybrany port.

> Może dwóch bez zewnętrznego adresu może łączyć się za pomocą trzeciego, 
> który musi mieć zewnętrzny?

Można, ale trzeba zapłacić za transfer. Dowolny serwer wirtualny jest w 
granicach nastu zł miesięcznie, ale duży transfer do/z już nie.

> Czy natomiast IPv6 załatwia sprawę?

Pod waruniem że dostawca to wspiera. Ostatecznie można uzyć IPv6 brokera 
(np. Hurricane) ale nie wiem czy te usłygi jeszcze funkcjonują. Wtedy 
dostaje sie coś w rodzaju tunelu z wirtualnego adresu IPv6 do dowolnej 
maszyny.

> Skąd rozproszona sieć będzie znała swoje adresy IP?

Poczytaj o overnet.

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

> Jak postawić dostępny 24h serwer/client na jakimś hostingu?

Kupić hosting z wirtualką. Resztę da się wyklikać.

> Zazwyczaj 
> jest tam miejsce na html i php ale czy jest tam możliwość uruchomienia 
> programu C/C++, na przykład w OVH czy Nazwa.pl?

Możesz kupić całą maszynę wirtualną z czymkolwiek zainstalowanym w 
środku (Linux. windwos itd itp). Choćby na Aruba Cloud. Płacisz jednak 
za transfery.
Technical Details
Message-ID: <qvngsa$2oa$1@dont-email.me>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin2!goblin3!goblin.stu.neva.ru!news.neodome.net!news.uzoreto.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail
References: <5e1f18ec$0$508$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin2!goblin3!goblin.stu.neva.ru!news.neodome.net!news.uzoreto.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail
From: heby <heby@poczta.onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Aplikacja rozproszona a adres IP
Date: Wed, 15 Jan 2020 18:07:20 +0100
Organization: A noiseless patient Spider
Lines: 65
Message-ID: <qvngsa$2oa$1@dont-email.me>
References: <5e1f18ec$0$508$65785112@news.neostrada.pl>
Mime-Version: 1.0
Injection-Date: Wed, 15 Jan 2020 17:07:23 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="0c4a7b89eabd5882928fe4cd788cfda4"; logging-data="2826"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+FSBbZRR0q+D3EZsN8/356"
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
Cancel-Lock: sha1:ICBaL/TMLcMlbY57Y3h1LvyuHbw=
In-Reply-To: <5e1f18ec$0$508$65785112@news.neostrada.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit