У меня проблемы с настройкой общего доступа к соединению в моей системе Slackware. Я включил rc.ip_forward:

$ cat /proc/sys/net/ipv4/ip_forward 
1

И я добавил следующее правило iptables (а других правил у меня нет):

iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

Это вывод ifconfig:

$ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 6c:62:6d:91:7f:3f  
          inet addr:10.42.0.1  Bcast:10.42.0.255  Mask:255.255.255.0
          inet6 addr: fe80::6e62:6dff:fe91:7f3f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:528 errors:0 dropped:36 overruns:0 frame:0
          TX packets:92 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:292440 (285.5 KiB)  TX bytes:32536 (31.7 KiB)

lo        Link encap:Local 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:349 errors:0 dropped:0 overruns:0 frame:0
          TX packets:349 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:27128 (26.4 KiB)  TX bytes:27128 (26.4 KiB)

wlan0     Link encap:Ethernet  HWaddr 14:d6:4d:48:b0:cd  
          inet addr:131.114.43.177  Bcast:131.114.43.255  Mask:255.255.252.0
          inet6 addr: fe80::16d6:4dff:fe48:b0cd/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:19695 errors:0 dropped:0 overruns:0 frame:0
          TX packets:18023 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9712346 (9.2 MiB)  TX bytes:3213810 (3.0 MiB)

Где wlan0 - это интерфейс, подключенный к интернету. IP-адрес eth0 устанавливается вручную с помощью netconfig , а wlan0 назначается с помощью dhcp точкой доступа.

К eth0 подключен маршрутизатор с собственным сервером DHCP, поэтому мне не нужно запускать его в моей системе. Маршрутизатор находится на 192.168.1.1 и обслуживает адрес с 192.168.1.100. Аппаратных проблем нет, так как я могу сделать это с Ubuntu и NetworkManager (с флажком "поделиться с другими" для eth0).

Как я могу устранить это?

1 ответ1

0

Это должно работать:

iptables -t nat -A POSTROUTING -o wlan0 -s 10.42.0.0/24 -j MASQUERADE
iptables -A FORWARD -i wlan0 -o eth0 -m state \
            --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .