Envie o meu IP para o servidor remoto sempre que iniciar

4

Eu quero enviar o IP do meu computador automaticamente toda vez que ele for inicializado. Eu edito /etc/rc.local

sleep 10
ifconfig > /tmp/myip
scp /tmp/myip <server>
exit 0

Eu tentei e não há inet addr, Bcast, Mask em /tmp/myip . Eu acho que a rede começa depois do script. Então, como fazê-lo? Muito obrigado!

    
por Justme0 26.05.2016 / 09:17

3 respostas

3

ifconfig não mostra a saída, provavelmente porque, no momento em que é executada, a configuração de rede não está totalmente concluída. Além disso, não há garantias de 100% de que o endereço IP dinâmico não será alterado durante o tempo de atividade do servidor.

Se estiver usando dhclient , mova o script para o diretório /etc/dhcp/dhclient-exit-hooks.d , para que ele seja executado após obter um endereço IP via DHCP. O Debian geralmente preenche este diretório; se não existir, talvez tenha que ser criado.

O script pode ser alterado para enviar o endereço IP durante a inicialização e sempre que mudar. Esteja ciente de que, dependendo do seu endereço IP, a duração da concessão do DHCP, você pode ou pode não estar interessado em copiá-lo toda vez.

Se em um ambiente ISP / Internet, pode ser também (mais) interessante usar um serviço DNS dinâmico.

Por favor, veja isto para mais detalhes Melhor método para agir sobre mudança de endereço IP do provedor?

e

link

    
por 26.05.2016 / 10:07
2

A solução depende de qual daemon do cliente dhcp você está usando. A maioria das distribuições (em * bsd e linux) usa dhcpcd ou dhclient . Em ambos os casos, você poderia inserir seu script na configuração do cliente.

  • dhcpcd runs /etc/dhcpcd.sh script, se existir, sempre que uma interface controlada for ativada ou desativada. Você pode simplesmente inserir seu scp neste script.

    Hooking into DHCP events
      dhcpcd will run /etc/dhcpcd.sh, or the script specified by the -c,
      --script option. It will set $1 to a shell compatible file that holds
      various configuration settings obtained from the DHCP server and $2 to
      either up, down or new depending on the state of dhcpcd.  dhcpcd ignores
      the exist code of the script.
    
  • dhclient chama o script ETCDIR/dhclient-exit-hooks logo depois que ele define a interface. Você pode seguir as instruções na seção Hook da página dhclient-script man.

    After all processing has completed, CLIENTBINDIR/dhclient-script checks
    for  the  presence  of an executable ETCDIR/dhclient-exit-hooks script,
    which if present is invoked using the ´.´ command.  The exit status  of
    dhclient-script  will be passed to dhclient-exit-hooks in the exit_sta-
    tus shell variable, and will always be zero if the script succeeded  at
    the  task  for  which  it was invoked.   The rest of the environment as
    described previously for dhclient-enter-hooks is  also  present.    The
    ETCDIR/dhclient-exit-hooks  script  can modify the valid of exit_status
    to change the exit status of dhclient-script.
    
por 26.05.2016 / 10:20
-2
ifconfig ethx > /tmp/myip

x é o seu número de interface como eth0

    
por 18.09.2018 / 10:31