Общий доступ к интернет-подключению Debian 6, также известный как маскарад IP, не работает
Проблема: компьютеры [Xbox 360 и ноутбук Kubuntu 12.04.1] не могут получить доступ к Интернету через недавно установленный ноутбук Debian 6 без настольного компьютера (который беспроводным образом подключен к станции WLAN), но адреса успешно предоставляются dnsmasq
,
Попытки:
1.1) /etc/dnsmaq.conf
в соответствии с http://wiki.debian.org/HowTo/dnsmasq: добавить строки
interface=eth0
dhcp-range=192.168.0.50,192.168.0.150,255.255.255.0,12h
1.2) Следуйте http://www.cyberciti.biz/faq/rhel-fedora-linux-internet-connection-sharing-howto/ и используйте их скрипт для настройки iptables.
2) Следуйте методу Ubuntu Internet Gateway (iptables) по адресу https://help.ubuntu.com/community/Internet/ConnectionSharing который работал в Share Internet в Linux.
Ноутбук Debian перезагружался много раз и между каждой попыткой, с автоматическим выполнением сценария и без него через /etc/rc.local
,
При добавлении iptables-restore
Команда для этого файла я отключил скрипт.
РЕДАКТИРОВАТЬ 1:
Gateway является pingable и в среднем 39 мс.
iptables -nvL
при попытке №2 выполнить прямую запись с монитора ноутбука после выполнения:
Chain INPUT (policy ACCEPT 179 packets, 26088 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- wlan0 eth0 192.168.0.0/24 0.0.0.0/0
ctstate NEW
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
ctstate RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT 88 packets, 10716 bytes)
pkts bytes target prot opt in out source destination
РЕДАКТИРОВАТЬ 2: iptables -t nat -nvL
:
Chain PREROUTING (policy ACCEPT 232 packets, 56438 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 60 packets, 4059 bytes)
pkts bytes target prot opt in out source destination
4 1032 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 64 packets, 5091 bytes)
pkts bytes target prot opt in out source destination
РЕДАКТИРОВАТЬ 3: Я попытался https://www.debian-administration.org/articles/23, сказав /etc/rc.local, чтобы запустить его, и он один, но все еще точно такая же проблема. На этот раз я переключил eth1 с wlan0.
1 ответ
Кажется, вы установили неверный интерфейс для выполнения MASQUERADE
за. Вы заявляете, что хотите "поделиться" интернет-соединением ноутбука, обеспеченным беспроводным соединением (возможно, wlan0
на вашей машине) для проводного подключения (кажется, eth0
на твоей машине). Тем не менее, ваш POSTROUTING
Правило цепи настроено для eth0
вместо wlan0
(thev значение в out
колонка актуальна здесь).
Попробуйте изменить сценарий, который вы упоминаете, чтобы читать так:
# set wan interface such as eth1 or ppp0
SHARE_IF="wlan0"
Затем он использует этот интерфейс для правильной установки правила iptabels в следующих строках:
echo "Setting ${SHARE_IF} as router interface..."
$IPT --table nat --append POSTROUTING --out-interface ${SHARE_IF} -j MASQUERADE