No Windows 7, como encontro o IP de um dispositivo (Raspberry Pi) conectado via Ethernet?

1

Eu quero determinar o IP do meu Raspberry Pi que está conectado ao meu PC via Ethernet e tem um IP dinâmico.

    
por gbhall 12.08.2012 / 14:06

2 respostas

3

Opção 1:
Olhe para o seu servidor DHCP. Se ele exibir todas as concessões de DHCP, você poderá vê-lo lá.

Opção 2:
Ou tente encontrá-lo em sua tabela arp se você souber o endereço MAC do seu Raspberry PI. Abra um prompt cmd para isso e digite arp -a . Em seguida, ele mostra uma lista de todos os pares IP-MAC conhecidos. Se não estiver lá, tente fazer o ping do seu endereço de broadcast e digite arp -a novamente. O IP de transmissão é sempre o último IP da sua sub-rede. Por exemplo, o IP de transmissão da sub-rede 192.168.0.0 é 192.168.0.255 .

Opção 3:
Você também pode escanear todos os dispositivos em sua rede para uma porta aberta se você conhece uma porta específica que está aberta apenas no seu Raspberry Pi. Digamos que o seu Raspberry Pi esteja aberto na porta 80, você poderia escanear todos os endereços IP na sua sub-rede para a porta 80. Se você não tem muitos servidores Web na sua rede (talvez apenas algumas impressoras e roteadores dos quais você conhece o IP endereço do curso), você vai encontrar o seu Raspberry Pi muito rápido.
Infelizmente, eu não sei como usar o nmap porque eu uso um script Powershell para escanear portas. Eu poderia colá-lo aqui se você quiser tentar. Simplesmente deixe-me saber nos comentários se você quiser experimentar o meu script.

Editar: Aqui está meu roteiro. Uso abaixo.

function Test-Port {

param(
        [parameter(Position=0)][string[]]$Computer=(Read-Host "Target: "),
        [parameter(Position=1)][string[]]$Port=(Read-Host "Ziel-Port: "),
        [int]$Timeout=1000
)

$ErrorActionPreference = "SilentlyContinue"
$ResultObjects = @()

foreach ($Target in $Computer) {
    foreach ($p in $Port) {
        $ResultObjects += P_Test-Port
    } # end port foreach
} #end target foreach

return $ResultObjects
} #end function

function P_Test-Port {

        $tcpclient = new-object system.net.sockets.tcpclient
        $con = $tcpclient.BeginConnect($Target,$p,$null,$null)
        $wait = $con.AsyncWaitHandle.WaitOne($timeout,$false)
        [bool]$Open = $false

        # check the connection
        if(!$wait)
        {
            # close connection and report timeout
            $tcpclient.Close()
            [string]$result = ("Connection Timeout (" + $Timeout + " ms)")
            $failed = $true
        } else {
            $error.Clear()
            $tcpclient.EndConnect($con) | out-null
            if(!$?){[string]$result = ("Closed / Filtered");$failed = $true}
            $tcpclient.Close()
        }
        if(!$failed){
            [string]$result = ("Open")
            $failed = $false
            $Open = $true
        } 



        $objTestPortResult = new-object System.Object
        $objTestPortResult | Add-Member -type NoteProperty -name Host -value $Target
        $objTestPortResult | Add-Member -type NoteProperty -name Port -value $p
        $objTestPortResult | Add-Member -type NoteProperty -name Result -value $result
        $objTestPortResult | Add-Member -type NoteProperty -name Open -value $Open

        return $objTestPortResult
}

Copie este script e cole-o no seu PowerShell. Você pode usá-lo da seguinte maneira:
Test-Port <IP-Address[]> <Port[]>

Exemplo: Test-Port 192.168.0.1,AnyComputerName 80,443
Isso varrerá os computadores 192.168.0.1 e AnyComputerName para as portas abertas 80 e 443 . Você pode simplesmente passar um argumento para Computername e Port ou passar vários valores separados por vírgula.

Para verificar toda a sua sub-rede para a porta 80, faça isso da seguinte maneira (supondo que esteja usando a sub-rede 192.168.0.0/24):% $ips = 1..254 | Foreach-Object { "192.168.0.$_" } ; Test-Port $ips 80

Deixe-me saber se você precisa de mais informações ou simplesmente me dê a porta que você deseja procurar, então eu vou criar o seu comando para você.

    
por 12.08.2012 / 14:31
0

Se você souber o nome do host RasPi, basta fazer o ping dele. Se responder ao ping, ele informará o endereço IP.

Nenhum script é necessário.

    
por 14.06.2013 / 07:53