Ir para conteúdo

Descobrir Portas de um determinado IP


_Kurimatzu_

Posts Recomendados

Aqui está um método que descobre portas abertas em um IP.

 

Para que usar?

Você quer quer o IP de testes que seu amigo (@@MrPowerGamerBR) nunca passa para você, isso serve para achar a porta do servidor de testes.

public static void main(final String[] args)
			throws MalformedURLException, IOException {
		final boolean MineCraftServer = true;
		final String ip = "IP_DO_SERVIDOR";
		if (!MineCraftServer)
			for (int i = 25565; i < 30000; i++)
				try {
					final URL u = new URL("http://" + ip + ":" + i);
					final HttpURLConnection huc = (HttpURLConnection) u
							.openConnection();
					huc.connect();
					System.out.println("A Porta " + i + " está aberta!");
				} catch (final IOException e) {
				}
		else
			for (int i = 25565; i < 30000; i++) {
				final JSONObject obj = DescobrirPorta.readJsonFromUrl(
						"http://mcapi.ca/query/" + ip + ":" + i + "/info");
				final boolean on = obj.getBoolean("status");
				if (on)
					System.out.println(
							"O Servidor " + ip + ":" + i + " está online!");
			}
	}
	private static String readAll(final Reader rd) throws IOException {
		final StringBuilder sb = new StringBuilder();
		int cp;
		while ((cp = rd.read()) != -1)
			sb.append((char) cp);
		return sb.toString();
	}
	public static JSONObject readJsonFromUrl(final String url)
			throws IOException, JSONException {
		final InputStream is = new URL(url).openStream();
		try {
			final BufferedReader rd = new BufferedReader(
					new InputStreamReader(is, Charset.forName("UTF-8")));
			final String jsonText = DescobrirPorta.readAll(rd);
			final JSONObject json = new JSONObject(jsonText);
			return json;
		} finally {
			is.close();
		}
	}

(A opção  MineCraftServer true/false, serve para pegar direto da API e verificar se o servidor com a determinada porta está online.)

 

Link para o comentário
Compartilhar em outros sites

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, a class='ipsType_brandedLink' href='https://gamersboard.com.br/login/' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title='Sign In Now'>acesse agora para postar com sua conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

Processando...
×
×
  • Criar Novo...