Como sites grandes (por exemplo, Wikipedia) lidam com bots que estão atrás de outro mascarador de IP? Por exemplo, na minha universidade, todos pesquisam na Wikipédia, dando-lhe uma carga significativa. Mas, até onde eu sei, a Wikipedia só pode saber o IP do roteador da universidade, então se eu configurar um bot "desencadeado" (com apenas um pequeno atraso entre as solicitações), a Wikipedia pode banir meu bot sem banir toda a organização? um site pode realmente banir um IP por trás de uma rede organizacional?
Não, eles banirão o IP público e todos que fizerem NAT para esse IP também serão banidos.
Embora pelo menos At stack, se pensarmos que vamos banir uma faculdade ou algo parecido, entraremos em contato com o contato de abuso para que eles rastreiem o infrator e interrompam o problema.
Um site não pode banir diretamente um IP que está por trás do NAT. Ele pode atuar em IPs passados por proxies HTTP não anonimizados - quando tal proxy encaminha uma solicitação, ele normalmente anexa esse endereço a um cabeçalho X-Forwarded-For, portanto, se o acesso de sua rede privada realmente tiver que passar por tal proxy, o IP interno pode ser exposto; no entanto, a maioria dos sites (incluindo a wikipedia) não confiaria nas informações desse cabeçalho de qualquer maneira, porque é fácil falsificar para implicar IPs inocentes ou evitar proibições.
No entanto, existem outras técnicas que tentam identificar exclusivamente os usuários, independentemente do endereço IP. Você pode interrogar um navegador da Web para obter muitas informações sobre ele e o sistema em que está sendo executado, como o agente do usuário, resolução da tela, lista de plug-ins etc. - consulte https://github.com/carlo/jquery- impressão digital do navegadorpara um exemplo disso na prática. Você pode usar essas impressões digitais para controlar o acesso, embora, dependendo do design do site, possa interagir com ele sem se envolver no processo de impressão digital e, mesmo que não possa, um bot pode fornecer dados espúrios e aleatórios para evitar ter um impressão digital consistente se você estiver ciente de que esse tipo de proteção está em vigor. Este método de controle também corre o risco de falsos positivos, especialmente quando se trata de dispositivos móveis, onde provavelmente haverá um grande número de clientes executando clientes padrão idênticos em hardware padrão idêntico (a maioria das pessoas em um modelo específico de iPhone executando uma versão específica do iOS , por exemplo, provavelmente obteria a mesma impressão digital).
Geralmente o endereço IP não é informação suficiente para um banimento correto. Portanto, as redes avançadas funcionam no topo da pilha de rede.
Um ataque de negação de serviço (DoS) (que você está preocupado em criar) geralmente é tratado limitando a taxa da configuração inicial da conexão TCP. Isso significa que os usuários legítimos que estão dispostos a esperar passarão, enquanto aqueles que estão apenas tentando consumir os recursos do servidor ficam mais lentos a ponto de se tornarem inofensivos. Foi aí que o DoS evoluiu para um ataque Distributed DoS (DDoS).
Depois de ter uma conexão com o servidor, você pode fazer quantas solicitações quiser, a administração do servidor da Web pode configurar quantas solicitações manipular.
De qualquer forma, o servidor da Web provavelmente pode lidar com mais capacidade do que o gateway da rede local; esse provavelmente é o fator limitante no seu caso de uso. Aposto que os administradores da rede da sua universidade viriam bater à sua porta antes da Wikipedia.
É importante ser um bom cidadão da Internet, então eu adicionaria um código de limitação de taxa a um bot.
Também deve ser apontado que a Wikipédia oferece despejos de dados, de modo que não é realmente necessário vasculhar o site.