Шлюз на Ubuntu 10.04 с pppoe подключением и wifi адаптером D-Link.
Ноутбук с чипом atheros.
Надо:
чтобы на ноуте был интернет по wifi.
Дополнительные сведения:
Если на шлюзе перегрузится в Вин7 всё работает отлично.
Провайдер вроде бы не режет НАТ. В ХР тоже всё великолепно работало.
Что делаю:
На шлюзе поднимаю iptables с единственным правилом:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
(SNAT тоже пробовал...)
Задаю параметры сети (именно с такими параметрами работает сеть в Вин7, но пробовал и другие подсети, в том числе 0):
шлюз:
IP: 192.168.8.1
Маска: 255.255.255.0
ноутбук:
IP: 192.168.8.2
Маска: 255.255.255.0
Шлюз: 192.168.8.1
DNS: 192.168.8.1 (dnsmasq есть и работает, другие dns пробовал тоже, что впрочем не важно, почему - понятно будет дальше)
iptables на ноутбуке девственно чист.
Форвардинг на шлюзе включен.
Имеем:
# ifconfig
Код: Выделить всё
eth0 Link encap:Ethernet HWaddr 00:18:f3:fb:34:42
inet6 addr: fe80::218:f3ff:fefb:3442/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:382284 errors:0 dropped:0 overruns:0 frame:0
TX packets:381245 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:282982159 (282.9 MB) TX bytes:364526559 (364.5 MB)
Interrupt:25 Base address:0xe000
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:147 errors:0 dropped:0 overruns:0 frame:0
TX packets:147 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:14285 (14.2 KB) TX bytes:14285 (14.2 KB)
ppp0 Link encap:Протокол PPP (Point-to-Point Protocol)
inet addr:77.66.1чч.ч26 P-t-P:80.80.111.122 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:154261 errors:0 dropped:0 overruns:0 frame:0
TX packets:148952 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:114003715 (114.0 MB) TX bytes:140767997 (140.7 MB)
wlan0 Link encap:Ethernet HWaddr 00:1e:58:ad:c1:08
inet addr:192.168.8.1 Bcast:192.168.8.255 Mask:255.255.255.0
inet6 addr: fe80::21e:58ff:fead:c108/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2400 errors:0 dropped:0 overruns:0 frame:0
TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:169207 (169.2 KB) TX bytes:465233 (465.2 KB)# route
Код: Выделить всё
Таблица маршутизации ядра протокола IP
Destination Gateway Genmask Flags Metric Ref Use Iface
c08-ats66.aaane * 255.255.255.255 UH 0 0 0 ppp0
192.168.8.0 * 255.255.255.0 U 2 0 0 wlan0
link-local * 255.255.0.0 U 1000 0 0 ppp0
default c08-ats66.aaane 0.0.0.0 UG 0 0 0 ppp0# iptables-save
Код: Выделить всё
# Generated by iptables-save v1.4.4 on Tue May 11 00:46:59 2010
*mangle
:PREROUTING ACCEPT [390885:282656987]
:INPUT ACCEPT [384835:282245864]
:FORWARD ACCEPT [5779:341136]
:OUTPUT ACCEPT [385257:363734973]
:POSTROUTING ACCEPT [391539:364156858]
COMMIT
# Completed on Tue May 11 00:46:59 2010
# Generated by iptables-save v1.4.4 on Tue May 11 00:46:59 2010
*filter
:INPUT ACCEPT [391077:287002131]
:FORWARD ACCEPT [5779:341136]
:OUTPUT ACCEPT [388783:364174050]
COMMIT
# Completed on Tue May 11 00:46:59 2010
# Generated by iptables-save v1.4.4 on Tue May 11 00:46:59 2010
*nat
:PREROUTING ACCEPT [5583:545666]
:POSTROUTING ACCEPT [331:44296]
:OUTPUT ACCEPT [2680:209719]
-A POSTROUTING -o ppp0 -j MASQUERADE
COMMIT
# Completed on Tue May 11 00:46:59 2010С ноутбука пингуются:
192.168.8.1
77.66.1чч.ч26 — мой айпишник смотрящий в сеть на ppp0
80.80.111.122 (P-t-P провайдера) уже не пингуется, как и любой внешний ip.
ДНСы (внешнии) не пингуются и не отвечают.
192.168.8.1 в качестве ДНСа работает и отвечает.
При этом судя по трассировке пакеты уходят в правильном направлении, а судя по статистике, ещё и возвращаются на головную машину-шлюз.
Ставлю WireShark.
Смотрю:
Вот картина пинга на интерфейсах wlan0 для ноута (2) и для шлюза (1) - как видно пакеты идут вроде бы правильно и даже доходят до 192.168.8.2, но такое ощущение, что не попадают в юзерспэйс, при этом в ЭТОЙ же сети, но когда шлюз win7 - всё нормально.
wlan0-2 (на ноутбуке)
wlan0-1 (на шлюзе)
ppp0-1
То есть что-то происходит с пакетами на шлюзе такое, что они потом не воспринимаются ноутом.
Прошу не ругаться если где ступил, сказал, что-то не так или написал лишние — познании в сетях ограничены трёхдневным курением мануалов в свободное время и пдсказками вроде бы разбирающихся товарищей...