Debian 6 berbagi koneksi internet alias penyamaran IP tidak berfungsi

1

Masalahnya: komputer [Xbox 360 dan laptop Kubuntu 12.04.1] tidak dapat mengakses Internet melalui laptop Debian 6 desktop yang baru diinstal (yang terhubung secara nirkabel ke stasiun WLAN) tetapi alamat berhasil diberikan olehdnsmasq.

Upaya:

1.1) di- /etc/dnsmaq.conf conffed menurut http://wiki.debian.org/HowTo/dnsmasq : tambahkan baris

interface=eth0
dhcp-range=192.168.0.50,192.168.0.150,255.255.255.0,12h

1.2) Ikuti http://www.cyberciti.biz/faq/rhel-fedora-linux-internet-connection-sharing-howto/ dan gunakan skrip mereka untuk mengatur iptables.

2) Ikuti Metode Ubuntu Internet Gateway (iptables) di https://help.ubuntu.com/community/Internet/ConnectionSharing direkomendasikan dan yang bekerja di Share internet di Linux .

Laptop Debian di-reboot berkali-kali dan di antara setiap upaya, dengan dan tanpa skrip dijalankan secara otomatis /etc/rc.local.

Sambil menambahkan iptables-restoreperintah ke file itu, saya menonaktifkan skrip.

EDIT 1:

Gateway adalah pingable dan rata-rata 39ms.

iptables -nvL dengan upaya # 2 berlaku, penulisan langsung dari monitor laptop setelah mengeksekusi:

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

EDIT 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

EDIT 3: Saya mencoba https://www.debian-administration.org/articles/23 dengan memberi tahu /etc/rc.local untuk menjalankannya, dan itu sendiri, tetapi masalahnya masih persis sama. Kali ini saya beralih eth1 dengan wlan0.

rautamiekka
sumber
1
Tolong tunjukkan aturan aktual Anda (output dari iptables -nvL).
Ansgar Wiechers
Bisakah mereka melakukan ping gateway?
David Schwartz
@ Davidvidchwartz: Ya gateway bisa ping.
rautamiekka
@AnsgarWiechers: Ditambahkan ke pos.
rautamiekka
@AnsgarWiechers ini mencetak tabel biasa, bukan tabel NAT. @Rautamiekka, berikan output iptables -t nat -nvL.
gertvdijk

Jawaban:

1

Tampaknya Anda telah mengatur antarmuka yang salah untuk melakukan MASQUERADE. Anda menyatakan bahwa Anda ingin 'berbagi' koneksi internet laptop yang disediakan oleh koneksi nirkabel (mungkin wlan0pada mesin Anda) ke koneksi kabel (tampaknya ada eth0di komputer Anda). Namun, POSTROUTINGaturan rantai Anda dikonfigurasikan sebagai eth0gantinya wlan0(nilai thev di outkolom relevan di sini).

Coba ubah skrip yang Anda baca untuk dibaca seperti ini:

# set wan interface such as eth1 or ppp0
SHARE_IF="wlan0"

Itu kemudian menggunakan antarmuka itu untuk mengatur aturan iptabel Anda dengan benar di baris ini:

echo "Setting ${SHARE_IF} as router interface..."
$IPT --table nat --append POSTROUTING --out-interface ${SHARE_IF} -j MASQUERADE
gertvdijk
sumber
Membalas komentar Anda di OP.
rautamiekka
@Rautamiekka: dan saya baru saja memperluas jawaban saya untuk mengarahkan Anda ke baris dalam skrip Anda yang menurut saya harus diperiksa dan diubah.
gertvdijk
Anda tahu sedikit lebih banyak dari saya, jadi mana dari instruksi yang dicoba itu yang lebih berhasil? Dengan jawaban ini Anda sepertinya menyukai yang pertama. Memang, saya gagal dengan mengatur antarmuka WAN dalam skrip.
rautamiekka
@Rautamiekka: Instruksi percobaan manakah yang Anda maksud? Saya rasa saya sarankan tepat satu: "Coba ..."
gertvdijk
Anda menunjuk ke 1.2.
rautamiekka