Проблема наблюдается на машинке с Gentoo потому пишу сюда. Собственно поднимается pppoe, машинка получается внешний ip-адрес. Итого у нас получается два ip адреса. Один локальный, второй внешний. Например локальный 192.168.0.10 (eth0), а внешний xxx.xxx.xxx.3 (ppp0). Дефолтный маршрут идет через xxx.xxx.xxx.1. Вроде бы все хорошо и отлично, но с локальной сети машину по локальному адресу не видит никто, только по xxx.xxx.xxx.3. Если добавить в таблицу маршрутизации правило:
То возникает новая проблема. Машина по локальному адресу видна, а по внешнему с локальной сети ее никто не видит.
Может кто подскажет в какую сторону рыть?
P.S. На машинке с дебианом все работает отлично и без дополнительного маршрута. Тоесть после подъема pppoe машина с локальной сети видна как по внешнему так и локальному ip.
а внешний адрес и не должно быть видно из локальной сети (за исключением если: на неё роутинг настроен, она форвардит, и настроен NAT)
Все настроено. Говорю же если ничего не трогать и просто поднять pppoe, то машина с локалки видна по внешнему ip, а по локальному нет. А когда добавить маршрут, то машинка перестает быть видна по внешнему.
Да и на соседней тачке с убунту все работает отлично. Видна и по внешнему и по локальному.
а внешний адрес и не должно быть видно из локальной сети (за исключением если: на неё роутинг настроен, она форвардит, и настроен NAT)
Все настроено. Говорю же если ничего не трогать и просто поднять pppoe, то машина с локалки видна по внешнему ip, а по локальному нет. А когда добавить маршрут, то машинка перестает быть видна по внешнему.
Да и на соседней тачке с убунту все работает отлично. Видна и по внешнему и по локальному.
Destination Gateway Genmask Flags Metric Ref Use Iface
91.214.160.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
172.16.21.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 91.214.160.1 0.0.0.0 UG 0 0 0 ppp0
При такой конфигурации машинку не видно из локальной сети по ипу 172.16.21.125. Если добавить маршрут 172.16.0.0/16 gw 172.16.21.1. То машинка доступна по адресу 172.16.21.125, но не доступна с локалки по внешнему айпи.
Destination Gateway Genmask Flags Metric Ref Use Iface
91.214.160.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
172.16.21.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 91.214.160.1 0.0.0.0 UG 0 0 0 ppp0
При такой конфигурации машинку не видно из локальной сети по ипу 172.16.21.125. Если добавить маршрут 172.16.0.0/16 gw 172.16.21.1. То машинка доступна по адресу 172.16.21.125, но не доступна с локалки по внешнему айпи.
смущает "91.214.160.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0", а может фаерволвиноват?
"При такой конфигурации машинку не видно из локальной сети по ипу 172.16.21.125" - а с какого IP не видно ?
В данном случае <локальная сеть> - это 172.16.21.0/24, всё что вне неё - внешняя сеть.
И тут в итоге проблем не наблюдаю. А какие настройки на машинках в локальной сети ?
(кстате, iptables -n -t nat -L, что нибудь показывает ? и ещё cat /proc/sys/net/ipv4/ip_forward )
Destination Gateway Genmask Flags Metric Ref Use Iface
91.214.160.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
172.16.21.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 91.214.160.1 0.0.0.0 UG 0 0 0 ppp0
При такой конфигурации машинку не видно из локальной сети по ипу 172.16.21.125. Если добавить маршрут 172.16.0.0/16 gw 172.16.21.1. То машинка доступна по адресу 172.16.21.125, но не доступна с локалки по внешнему айпи.
Добавлять шлюз конечно же обязательно, для сети 172.16.0.0/16. Иначе все уходит на маршрут по умолчанию. С другой стороны вы никаким образом не сможете достучатся до адреса 91.214.160.1 из локальной сети(разве что сеть 91.214.160.0/24 явно будет прописана на маршрутизаторе, но это не наш случай). По адресу 91.214.160.1 до вас стучат по такому пути хост->шлюз(n штук)->интернет->ваш_интернет_адрес(91.214.160.1) а по сети хост->шлюз(n штук)->хост не касаясь интернета. Поэтому должны работать оба варианта. Если не могут достучаться пусть смотрят traceroute и на то по какому пути идут.
> С адресов 172.16.21.0.24 все нормально. Машинку не видно с адресов 172.16.0.0/16
Совместите в голове две эти цитаты и будет Вам щастье. Советую на листочке нарисовать схему/диаграмму что куда маршрутизируется (сети, интерфейсы, хосты,...)
> В данном случае <локальная сеть> - это 172.16.21.0/24, всё что вне неё - внешняя сеть.
Что до конкретики, то 91.214.160.3 из локальной сети (172.16.21.0/24) ну никак не должно видеться, если не настроена маршрутизация на других компах (через 172.16.21.125).