Linux 상자에서 연결 공유를 활성화하려면 무엇이 빠졌습니까?

Linux 상자에서 연결 공유를 활성화하려면 무엇이 빠졌습니까?

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은 인터넷에 연결된 인터페이스입니다. eth0 IP 주소는 를 사용하여 수동으로 설정되는 netconfig반면 wlan0은 액세스 포인트에 의해 dhcp로 할당됩니다.

eth0에 연결하면 자체 DHCP 서버가 있는 라우터가 있으므로 시스템에서 이를 실행할 필요가 없습니다. 라우터는 192.168.1.1에 있고 192.168.1.100의 주소를 제공하고 있습니다. Ubuntu 및 NetworkManager(eth0에 대한 "다른 사용자와 공유" 확인란 사용)를 사용하여 수행할 수 있으므로 하드웨어 문제는 없습니다.

이 문제를 어떻게 해결할 수 있나요?

답변1

이것은 작동합니다:

iptables -t nat -A POSTROUTING -o wlan0 -s 10.42.0.0/24 -j MASQUERADE
iptables -A FORWARD -i wlan0 -o eth0 -m 상태 \
            --상태 관련, 설정됨 -j 수락
iptables -A FORWARD -i eth0 -o wlan0 -j 수락

관련 정보