Общий доступ к интернету без Администратора сети

Я следовал этим инструкциям для установки общего интернет-соединения с iptables. А именно, я:

  1. Добавленный сетевой интерфейс для моего второго NIC в/etc/network/interfaces как так:

    auto eth1

    iface eth1 inet static

    address 192.168.1.100

    netmask 255.255.255.0

  2. Вводимый эти правила точно:

    sudo iptables -A FORWARD -o eth0 -i eth1 -s 192.168.1.0/24 -m conntrack --ctstate NEW -j ACCEPT

    sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

    sudo iptables -t nat -F POSTROUTING

    sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

  3. Сохраненный мои правила в файл и добавил его к/etc/rc.local

  4. Включенная передача IP путем изменения значения/proc/sys/net/ipv4/ip_forward к 1

  5. Непрокомментированный строка net.ipv4.ip_forward=1 в/etc/sysctl.conf

  6. Перезапущенный

Теперь, когда я включаю свой ноутбук в интерфейс eth1, я получаю IP-адрес и могу проверить с помощью ping-запросов шлюз, но я ничего не могу достигнуть за пределами этого. т.е. я не могу проверить с помощью ping-запросов 8.8.8.8.

В случае, если это релевантно, мой другой интерфейс является соединением PPPoE. Это похоже на это:

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up
provider dsl-provider

auto eth0
iface eth0 inet manual

Я думал, возможно, что проблема состояла в том, что dnsmasq не присваивал серверы имен, таким образом, я добавил dns-nameservers 8.8.8.8 8.8.8.4 под обоими интерфейсами в/etc/network/interfaces. Это не помогло, таким образом, я пытался добавить серверы имен к/etc/resolv.conf. Никакая справка там. Наконец, я пытался добавить их к/etc/dnsmasq.conf:

no-resolv
server=8.8.8.8
server=8.8.4.4

Это не помогло также. Я не уверен однако, если моя проблема действительно имеет какое-либо отношение к серверам имен или если это - просто другой случай устаревшей, бесполезной документации.

Я смог получить эту работу с Администратором сети однажды, но мне не нравилось, как Администратор сети не позволял мне присвоить диапазон DHCP. Таким образом, я хотел бы постараться не возвращаться к этому.

6
задан 19 May 2013 в 13:18

1 ответ

Исправлено:

sudo iptables -A FORWARD -o ppp0 -i eth1 -s 192.168.1.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Еще раз спасибо g0rdon в #openwrt:)

0
ответ дан 19 May 2013 в 13:18

Другие вопросы по тегам:

Похожие вопросы: