# IP de ADSL em modo router: é possível?

## Nattie

Oi. Depois de anos sumida desse fórum, resolvi voltar à vida. 

Tenho uma dúvida existencial.  Uso ADSL PPPoE com o modem em modo router - e não bridge, como é o default, ou seja, não preciso do rp-pppoe - mas, devido à conveniência de o IP ficar no modem e não na minha máquina, acaba que o IP padrão da minha máquina é um daqueles 192.168.coisas.  Minha dúvida é: alguém sabe se tem alguma maneira de criar uma interface de rede, dummy que seja, através da qual eu possa pegar o IP real da minha conexão? Meu modem é um Copperjet 810, mas acho que isso não significa nada...

----------

## malloc

Directamente não podes, no entanto se o modem tiver um daqueles interfaces web, podes criar um pequeno script para ver ver a pagina onde o ip externo está e tirar o seu valor. 

Quanto ao "dummy" interface n me parece que tenha mta utilidade

----------

## Nattie

Não, o meu não tem interface web, é tudo feito por telnet - tudo o que eu sei é que ele cria um device interno ppp com o IP e pro qual eu preciso criar umas regras NAT pra fazer o forward das portas.

----------

## malloc

Então mas isso é feito no router correcto? 

O forward das portas normalmente e feito com base em ip's e n em interfaces. Só precisas de criar as rules no router.

Ou então sou eu q não tou a perceber problema?

----------

## To

Propriamente não percisas do IP que é atribuído pelo ISP. O teu principal problema é se o modem/router permite fazer NAT ou não, se permite aquilo que queres fazer é simples, se não permite, é impossivél...

Tó

----------

## malloc

 *To wrote:*   

> Propriamente não percisas do IP que é atribuído pelo ISP. O teu principal problema é se o modem/router permite fazer NAT ou não, se permite aquilo que queres fazer é simples, se não permite, é impossivél...
> 
> Tó

 

Que raio de router não dá para fazer NAT?? 

Só se for routers das lojas do chineses   :Laughing: 

----------

## pilla

 *malloc wrote:*   

>  *To wrote:*   Propriamente não percisas do IP que é atribuído pelo ISP. O teu principal problema é se o modem/router permite fazer NAT ou não, se permite aquilo que queres fazer é simples, se não permite, é impossivél...
> 
> Tó 
> 
> Que raio de router não dá para fazer NAT?? 
> ...

 

Vai rindo... o meu modem DSL-500g da DLink nao funcionou com o upgrade de firmware... da própria DLink! Eu levei alguns dias pra entender o que estava acontecendo e arranjar um firmware diferente... 

Alias, a interface web deles é meio precária no Linux. Pra trocar a senha do troço, tive que dar telnet.

----------

## Nattie

Pois então, o colega portoalegrense me entende: o firmware mais recente do meu modem-router não funciona com o pppoe da Telemar. :D 

Mas creio que ele suporta NAT sim, visto que ele tem um submenuzinho na interface telnet que tem um item "nat", e é através dela que eu abro e fecho portas.

----------

## malloc

Então é só isso q precisas. Cria os port forwards que te interessam e ficas com o problema resolvido.

Interfaces web são uma miséria. O meu speedtouch n mostra as regras de nat q tenho (e q são uns quantos) nem as da fw integrada no router. Uma tristeza, por isso é q tou a ver se compro um Cisco 5xx .

----------

## Nattie

Mas não é port forwarding que eu faço. Eu só gostaria de ter em algum lugar nas minhas interfaces de rede uma interface com o "ip real", e não o ip interno. 

Deixa eu esquematizar: 

atualmente, meu ifconfig retorna uma eth0 em 192.168.x.x e lp0. 

eu quero que meu ifconfig retorne a eth0 em 192.168.x.x, lp0 e alguma coisa tipo modem0 com ip "de verdade" atribuído pelo provedor ADSL. 

Como fazer?

----------

## malloc

Desculpa lá ser intrometido mas para que é que queres esse interface? Só para ser um dummy?

Isso n é nada dificil de fazer, basta fazeres um scriptzito que use uma daquelas paginas para ver os ip's (tipo checkip.dyndns.org) e o lynx e dinamicamente altere o iface. 

Agora repito, a n ser que precises disso para uma coisa mt importante não vejo a utilidade.

----------

## RoadRunner

Método mais fácil é fazer um script que abra uma daquelas páginas que devolvem o IP de acesso (tipo http://www.whats-my-ip.com/), pegue no ip e crie uma interface com esse ip. Depois por o script na cron para actualizar de n em n minutos, ou usar o script em modo deamon.

----------

## Nattie

Eu as vezes preciso do meu IP de verdade pra fazer algumas coisas, então me incomoda não ter acesso a ele. Mas gostei da idéia de fazer um script e isso resolveu meus problemas e me fez feliz! 

Obrigada!

----------

## mamsbrl

porque nao usa o tracerouter para obter o ip?

----------

## revertex

estou só um ano atrasado pra responder a este post, mas de qualquer maneira, talvez possa ajudar a alguém no futuro

```

#!/bin/bash

#wget -O - -q http://www.whatismyip.com | grep -i title | awk '{print $4}'

#wget -O - -q http://www.whatismyip.com | grep h1 | cut -f 4 -d " "

lynx -dump http://checkip.dyndns.org/ |sed 's/-[0-9].*$//'
```

todas as linhas retornam o mesmo valor, o ip da interface ppp do modem adsl configurado no modo nat, a ultima tem funcionado perfeitamente, embora seja mais complexa, por isso as outras estão comentadas.

estes scripts não são meus, encontrei em algum lugar no forum a um tempo atrás.

muito mais prático é usar um serviço como o no-ip ou dyndns

----------

## Matheus Villela

Desenterrou das trevas heim   :Twisted Evil: 

Dei uma olhada nos comandos que tu postou aí e cheguei a teoricamente a forma mais legal(pra mim ao menos) de fazer isso  :Very Happy: 

```
export IP=`wget -O - -q http://www.whatismyip.com | grep -i "<title" | awk '{print $4}'`
```

Veja o lance do 'grep -i "<title"' que arruma um probleminha que tinha no comando que tava fazendo serem "dumpadas" duas linhas e agora o comando retorna apenas o IP, além de obviamente o lance de exportar o IP pra variável de ambiente "IP".

Se eu fosse usar algum tipo de script que precisasse saber qual é meu IP externo colocaria esse comando aí no cron pra garantir que a variável $IP tá sempre com meu IP certo  :Wink: 

----------

## To

Vejam se não desenterrem algo não devem  :Wink: 

Tó

----------

## Nattie

Nossa, ressuscitaram esse tópico das cinzas. 

Bem, os anos passaram, eu resolvi esse problema já faz tempo, e da seguinte maneira: 

ifconfig dummy0 $(lynx -dump http://checkip.dyndns.org |egrep -o [0-9][0-9][0-9]?\.[0-9][0-9]?[0-9]?\.[0-9][0-9]?[0-9]?\.[0-9][0-9]?[0-9]?)

Obviamente o script pode ser mais bonito, mas dêem um desconto. eu fiz esse script milênios atrás. 

Dá pra resumi-lo em egrep -o [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+, algo assim

----------

## xef

Parece-me que o que o revertex postou é uma versão reduzida desse  :Smile: 

----------

