Como o cabeçalho TCP pode anunciar o IP da LAN sobre o IP público no sistema rastreador?


-1

** Eu hospedei um rastreador xbtit em um servidor VPS. Carreguei um arquivo e meu amigo que está em maio a LAN o baixou. Mas durante o download, ele não obteve a velocidade da LAN que deveria obter. Em vez de seu IP da rede local, seu IP público foi detectado e, portanto, ele foi baixado em velocidade lenta.

Como o cabeçalho TCP pode anunciar o IP da LAN sobre o IP público no sistema de rastreamento? Existe algum código php pequeno?

Quando eu costumava hospedar o servidor na LAN, não havia esses problemas. E todos os meus usuários que usarão esse rastreador são meus usuários de LAN do ISP.

Alguém por favor me ajude


não sei bem qual é o seu aplicativo, mas, em teoria, o IP privado pode ser incluído como dados, para que você veja o IP (não existe) mais profundo / mais longe, veja o TCP. vá mais fundo / mais longe, você vê o protocolo da camada de aplicativos um pouco mais longe e vê seus dados e tudo pode estar lá. a altura, o peso da sua namorada, talvez a foto se houver espaço, talvez o endereço se houver e, se você quiser, o IP privado do seu computador. mas provavelmente o protocolo bit torrent teria que ser abusado um pouco de alguma forma para contrabandear que no.
— barlop

Respostas:


0

Infelizmente, o que você está querendo não é realmente prático (e eu posso entender por que alguém deu a -1, embora não fosse eu).

Vou tentar desvendar um pouco para você -

Quando os computadores (domésticos) estão em uma LAN, eles geralmente compartilham um intervalo "inválido" de endereços, que o roteador reescreve como um endereço IP válido - um processo chamado NAT -, esse parece ser o caso da sua LAN.

Um servidor web usa TCP (normalmente na porta 80). A maioria dos servidores da Web poderá fornecer informações sobre o computador que está se conectando a ele com base em dois fatores - os dados que ele recebe - que parecem vir do roteador, não do computador - e dos cabeçalhos fornecidos pelo cliente da Web. Nenhum desses fatores inclui o endereço de rede local do cliente em que o endereço de rede local foi NAT - na verdade, fazer isso seria uma falha de segurança sem (na maior parte) nenhum valor. Este é o problema fundamental que você está tendo.

Portanto, a resposta para a próxima parte da sua pergunta é "Não, você não pode escrever um pedaço de PHP para anunciar o IP local, pois ele nunca recebe o IP local". Além disso, fazer isso seria contrário ao espírito do Bittorrent - desculpe, mas o compartilhamento de um arquivo usando o BT EXTERNALLY para uso local está fora dos parâmetros de design - esse tipo de problema pode ser resolvido usando o compartilhamento de arquivos.

Se você deseja solucionar o problema, é necessário mover o Tracker para a LAN ou conectar o VPS externo à LAN através de uma VPN para "derrotar" o NAT entre os locais. Dito isto, se você estiver fazendo essas perguntas, provavelmente precisará aprender muito antes de iniciar a configuração de uma VLAN que funcionará para você.


você escreve "um intervalo de endereços 'inválido'" OUCH. Quer dizer gama particular de endereços, conforme listado na RFC 1918.
— barlop

Observe que alguns clientes tentam procurar outros clientes na mesma LAN e fazem o compartilhamento da LAN dessa maneira, mas esse é um recurso por cliente e não o próprio protocolo bittorrent.
— Scott Chamberlain

@ Barlop - Sim, você está correto, e eu estou ciente da RFC1918 (incluindo a faixa 172.16 / 12 que a maioria das pessoas não reconhece!). Eu deliberadamente tentei manter minha resposta simples, por isso a palavra inválida estava entre aspas.
— davidgo 24/09

0

É verdade que não há solução prática para o seu problema.

No entanto, só consigo pensar em uma maneira alternativa para o seu problema.

Você pode configurar um rastreador bittorrent na sua rede local e pedir ao rastreador principal (que está no www) para adicionar um URL de anúncio do seu rastreador torrent local automaticamente enquanto faz o download do torrent.

Isso é possível com o . O script que xbtitvocê está usando usa um método de codificação e decodificação de torrent chamado BEncodee BDecode. Você pode adicionar ou remover URLs do rastreador durante o processo BEncoding.

Você pode desenvolver algum código php para verificar o URL de solicitação do download, se estiver dentro do seu intervalo de IP. Se for uma correspondência, você pode adicionar o URL de anúncio do rastreador local dentro da matriz de "announce-list". Configure seu rastreador de torrent local para rastrear qualquer torrent para qualquer usuário. Consulte a documentação XBTT .

Agora, os usuários da sua rede local na sua LAN podem baixar o torrent e serem anunciados na sua rede local, conectar-se e baixar.


0

Na configuração do seu rastreador

Marque Permitir Torrents Externos

Desmarque Desativar DHT

desmarque Private Scrape

Desmarcar anúncio privado

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.