Forwarding nie działa na Linuxie!


(Sebastian Gucio) #1

Witam!

Chcę udostępnić po kablu internet z kompa (Ubuntu 13.04) do lapka (win7).

Schemat:

ISP>>>>>Eth0 --- Eth1>>>>>>Lapek

Problem polega na tym iż internetu nie ma na laptopie :confused: a ping pomiędzy kompem a lapkiem jest! Nie wiem co może być nie tak, czy np. jakiegoś pakietu nie mam i muszę go doinstalować...

Dodam jeszcze że robiłem

echo 1 > /proc/sys/net/ipv4/ip_forward

a to skrypt który mam do forwardowania który widocznie nie działa albo ja nie umiem go uruchomić:

#!/bin/sh


IPTABLES=/sbin/iptables


/bin/echo 1 > /proc/sys/net/ipv4/ip_forward

#wyczyszczenie iptables

$IPTABLES --flush

#wylaczenie flush dla net ze wzgledu na info dla userow

$IPTABLES -t nat --flush

$IPTABLES --delete-chain


$IPTABLES -P INPUT ACCEPT

$IPTABLES -P FORWARD ACCEPT

$IPTABLES -P OUTPUT ACCEPT



$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/20 -o eth0 -j SNAT --to-source 192.168.232.40

Konfiguracja:

CPU eth0

ip 192.168.232.40 (DHCP)


CPU eth1

ip 192.168.0.1

gateway 0.0.0.0

mask 255.255.255.0


Laptop

ip 192.168.0.100

gateway 192.168.0.1

mask 255.255.255.0

Proszę o pomoc!


(mr-owl) #2

Witam,

Ale z tą maską sieci to zaszalałeś…

Pozdrawiam,

mr-owl


(nnick) #3

na laptopie jaka jest trasa domyślna?


(roobal) #4

Twój dostawca prawdopodobnie nie zna trasy do twojej sieci. O ile pakiety wychodzą, to nie wracają. Jeśli IP przydzielane jest dynamicznie, tzn. zmienia się co jakiś czas, to zamiast source nat użyj maskarady, a jeśli jest stałe może być snat lub zgoś ISP, aby dodał trasę do twojej sieci, ale wątpię, aby to zrobił i jak kolega pisal wyżej, masz złą maskę, gdyż twoja sieć jest nadsiecią. Jeśli dostajesz publiczne IP, to bez natowania się nie obejdzie. Jeśli do eth0 podpinasz swój router, ustaw na nim trasę statyczną.

Jeśli chodzi o konfigurację interfejsów, to przy eth1 powinieneś podać bramę 192.168.232.40 system doda sobie automatycznie trasę domyślną do tablicy routingu i nie będziesz musiał dodawać jej ręcznie po każdym uruchomieniu systemu.

Natomiast w IPTables brakuje Ci reguły dl łańcucha forward, przy tej polityce bezpieczeństwa może nie jest wymagana, ale filtr przynajmniej wie od razu co zrobić z pakietem.

Zrób to tak.

  • [*:37kwkr7n] Konfiguracja interfejsów:

(Sebastian Gucio) #5

Niestety teraz nawet nie pinguja mi się sieci :confused: w konfiguracji iptables wyskakuje błąd w 14 linijce (ipatbles: nie znaleziono polecenia). Niestety jestem “laikiem” w tych sprawach i nie wiem co jest grane… :confused: jakieś jeszcze sugestie?


(roobal) #6

Ciężko było się domyślić, że popełniłem najzwyklejszą w świecie literówkę (zwłaszcza, że system podał Ci o co chodzi, skoro wszędzie jest iptables, to powinno Ci się rzucić w oczy, że ipatbles, to coś jest nie tak)? Pingowanie nie działa, ponieważ według reguł, które Ci podałem, blokuje ruch przychodzący. Teraz powinno być dobrze.

#!/bin/sh


# Czyszczenie reguł


iptables -F

iptables -X

iptables -t nat -F

iptables -t nat -X

iptables -t mangle -F

iptables -t mangle -X


# Polityka bezpieczeństwa


iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -P OUTPUT DROP


# Reguły dla pętli zwrotnej


iptables -A INPUT -i lo -j ACCEPT

iptables -A FORWARD -o lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT


# Reguły dla protokołu ICMP (zezwolenie na pingowanie)


iptables -A INPUT -p icmp -j ACCEPT

iptables -A FORWARD -p icmp -j ACCEPT


# Reguły dla połączeń nawiązanych


iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# Reguły dla NAT


iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 192.168.232.40

iptables -A FORWARD -o eth1 -j ACCEPT


# lub

#iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j SNAT --to-source 192.168.232.40

#iptables -A FORWARD -s 172.16.0.0/24 -j ACCEPT


# Jeśli IP się zmienia co jakiś czas, używasz maskarady zamiast SNAT.

#iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE

#iptables -A FORWARD -s 172.16.0.0/24 -j ACCEPT

(Sebastian Gucio) #7

Niestety po ponownym uruchomieniu komputera linux wywalił mi całkowicie karty sieciowe, w taki sposób że nawet “network manager” zniknął co wiązało się z brakiem internetu :evil: czym może być to spowodowane?! w terminalu po wpisaniu “ifconfig” karty sieciowe były…


(roobal) #8

Uruchom terminal i pokaż wynik poniższych poleceń.

ifconfig -a

cat /etc/network/interfaces

dpkg -l | grep network-manager

iptables -n -L

nm-tool

(Sebastian Gucio) #9

Przeinstalowałem system z tego względu że nie mogłem/umiałem zainstalować NM jeszcze raz. Skrypt tym razem odpalałem z pulpitu za pomocą komendy ./Pulpit/firewall.sh start , obydwa komputery się pingują jednak internetu dalej nie ma

Laptop:

ip 172.16.0.100

mask 255.255.255.0

gateway 172.16.0.1

root@Seba-komp:/home/seba# ifconfig -a

eth0 Link encap:Ethernet HWaddr 00:22:15:1b:e7:a3  

          inet addr:192.168.232.40 Bcast:192.168.232.255 Mask:255.255.255.0

          inet6 addr: fe80::222:15ff:fe1b:e7a3/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

          RX packets:9126 errors:0 dropped:0 overruns:0 frame:0

          TX packets:4580 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:6083975 (6.0 MB) TX bytes:758632 (758.6 KB)

          Interrupt:17 


eth1 Link encap:Ethernet HWaddr 64:70:02:04:21:e1  

          inet addr:172.16.0.1 Bcast:172.16.0.255 Mask:255.255.255.0

          inet6 addr: fe80::6670:2ff:fe04:21e1/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

          RX packets:437 errors:0 dropped:0 overruns:0 frame:0

          TX packets:225 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:41622 (41.6 KB) TX bytes:45844 (45.8 KB)

          Interrupt:21 Base address:0x4000

cat /etc/network/interfaces

auto lo

iface lo inet loopback

root@Seba-komp:/home/seba# dpkg -l | grep network-manager

ii network-manager 0.9.4.0-0ubuntu4.1 network management framework (daemon and userspace tools)

ii network-manager-gnome 0.9.4.1-0ubuntu2 network management framework (GNOME frontend)

ii network-manager-pptp 0.9.4.0-0ubuntu1 network management framework (PPTP plugin core)

ii network-manager-pptp-gnome 0.9.4.0-0ubuntu1 network management framework (PPTP plugin GNOME GUI)

iptables -n -L

Chain INPUT (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED


Chain FORWARD (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           


Chain OUTPUT (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED

nm-tool

NetworkManager Tool


State: connected (global)


- Device: eth1 [ETH1] ---------------------------------------------------------

  Type: Wired

  Driver: 8139too

  State: connected

  Default: no

  HW Address: 64:70:02:04:21:E1


  Capabilities:

    Carrier Detect: yes

    Speed: 100 Mb/s


  Wired Properties

    Carrier: on


  IPv4 Settings:

    Address: 172.16.0.1

    Prefix: 24 (255.255.255.0)

    Gateway: 192.168.232.40




- Device: eth0 [ETH0] ---------------------------------------------------------

  Type: Wired

  Driver: tg3

  State: connected

  Default: yes

  HW Address: 00:22:15:1B:E7:A3


  Capabilities:

    Carrier Detect: yes

    Speed: 100 Mb/s


  Wired Properties

    Carrier: on


  IPv4 Settings:

    Address: 192.168.232.40

    Prefix: 24 (255.255.255.0)

    Gateway: 192.168.232.254


    DNS: 192.168.11.1

    DNS: 192.168.15.1

(roobal) #10

Spróbuj zrobić wszystko po kolei, nie używaj network managera, może się nie sprawdzić w twoim zadaniu.

Edytuj plik konfiguracji interfejsów:

nano /etc/network/interfaces

i uzupełnij dane

auto eth0

iface eth0 inet dhcp


auto eth1

iface eth1 inet static

address 172.16.0.1

netmask 255.255.255.0

gateway 192.168.232.40

włącz przekazywanie pakietów na stałe

nano /etc/sysctl.conf

i odkomentuj poniższą linijkę, tj. usuń kratkę

włącz NAT (uproszczone reguły IPTables)

#!/bin/sh


iptables -F

iptables -X

iptables -t nat -F

iptables -t nat -X

iptables -t mangle -F

iptables -t mangle -X


iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT


iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j SNAT --to-source 192.168.232.40

iptables -A FORWARD -s 172.16.0.0/24 -j ACCEPT

zapisz skrypt w /etc/init.d/ jako firewall.sh dodaj powyższy skrypt do skryptów startowych

sudo chmod a+x /etc/init.d/firewall.sh

sudo update-rc.d firewall.sh defaults 90

Uruchom ponownie komputer i jeśli coś nie będzie działać, podaj wyniki poniższych poleceń.

ifconfig

cat /etc/network/interfaces

route -n

cat /proc/sys/net/ipv4/ip_forward

iptables -n -L

iptables-save

oraz konfiguracje laptopa, jeśli działa na Linuksie to

ifconfig

route -n

jeśli na Windows to

ipconfig /all

route print

(Sebastian Gucio) #11

jest mały problem, jeśli na laptopie mam internet to na Ubuntu już nie :confused: co może być nie tak?


(roobal) #12

W jaki sposób to łączysz? Bo skoro na Ubuntu nie masz internetu, to jak możesz mieć internet na laptopie, jeśli pełni on rolę routera?


(Sebastian Gucio) #13

W taki sposób jak napisałem w pierwszym poście,

ISP>>> ETH0 (KOMPUTER) ETH1 >>> Laptop

albo internet jest na kompie albo na laptopie, a pinguja się przez cały czas…


(roobal) #14

W takim razie podaj konfigurację Ubuntu. Pingowanie serwerów po adresach IP działa? Sprawdzałeś poleceniem traceroute, w którym miejscu pakiety nie są przesyłane?

Przy okazji powinieneś nauczyć się rozwiązywania problemów, tzw. troubleshooting, bo powinieneś wiedzieć co masz w systemie i jak to działa, wtedy dojdziesz dlaczego to nie działa.


(Sebastian Gucio) #15

Musiałem zmienić kompa na “starszy” i niestety dalej nie mam internetu na laptopie, co ciekawe gdy podłączam kabel ethrnetowy do laptopa to wtedy nie działa mi internet na Ubuntu (12.04). Pingi z laptopa na obydwa interfejsy dochodzą.

KONFIGURACJ UBUNTU:

ifconfig

eth0 Link encap:Ethernet HWaddr 00:22:15:1b:e7:a3  

          inet addr:192.168.232.40 Bcast:192.168.232.255 Mask:255.255.255.0

          inet6 addr: fe80::222:15ff:fe1b:e7a3/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

          RX packets:296 errors:0 dropped:0 overruns:0 frame:0

          TX packets:316 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:95957 (95.9 KB) TX bytes:47688 (47.6 KB)

          Interrupt:19 Base address:0xe400 


eth1 Link encap:Ethernet HWaddr 64:70:02:04:21:e1  

          UP BROADCAST MULTICAST MTU:1500 Metric:1

          RX packets:123 errors:0 dropped:0 overruns:0 frame:0

          TX packets:280 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:12445 (12.4 KB) TX bytes:41742 (41.7 KB)

          Interrupt:17 Base address:0xe000

cat /etc/network/interfaces

cat /etc/network/interfaces

route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

0.0.0.0 192.168.232.40 0.0.0.0 UG 0 0 0 eth1

169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth1

172.16.0.0 0.0.0.0 255.255.255.0 U 1 0 0 eth1

192.168.232.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0

192.168.232.40 0.0.0.0 255.255.255.255 UH 0 0 0 eth1

cat /proc/sys/net/ipv4/ip_forward

1

iptables -n -L

Chain INPUT (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED


Chain FORWARD (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           


Chain OUTPUT (policy DROP)

target prot opt source destination         

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0           

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED

iptables-save

# Generated by iptables-save v1.4.12 on Tue Jun 18 14:51:40 2013

*mangle

:PREROUTING ACCEPT [521]

:INPUT ACCEPT [444]

:FORWARD ACCEPT [51]

:OUTPUT ACCEPT [592]

:POSTROUTING ACCEPT [684]

COMMIT

# Completed on Tue Jun 18 14:51:40 2013

# Generated by iptables-save v1.4.12 on Tue Jun 18 14:51:40 2013

*nat

:PREROUTING ACCEPT [133]

:INPUT ACCEPT [1]

:OUTPUT ACCEPT [170]

:POSTROUTING ACCEPT [82]

-A POSTROUTING -o eth1 -j SNAT --to-source 192.168.232.40

COMMIT

# Completed on Tue Jun 18 14:51:40 2013

# Generated by iptables-save v1.4.12 on Tue Jun 18 14:51:40 2013

*filter

:INPUT DROP [171]

:FORWARD DROP [2]

:OUTPUT DROP [2]

-A INPUT -i lo -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

-A FORWARD -o lo -j ACCEPT

-A FORWARD -p icmp -j ACCEPT

-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

-A FORWARD -o eth1 -j ACCEPT

-A OUTPUT -o lo -j ACCEPT

-A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

COMMIT

# Completed on Tue Jun 18 14:51:40 2013

KONFIGURACJA LAPTOPA: ipconfig /all

Konfiguracja IP systemu Windows


   Nazwa hosta . . . . . . . . . . . : Dom

   Sufiks podstawowej domeny DNS . . :

   Typ węzła . . . . . . . . . . . . : Hybrydowy

   Routing IP włączony . . . . . . . : Nie

   Serwer WINS Proxy włączony. . . . : Nie


Karta bezprzewodowej sieci LAN Połączenie sieci bezprzewodowej:


   Stan nośnika . . . . . . . . . . .: Nośnik odłączony

   Sufiks DNS konkretnego połączenia :

   Opis. . . . . . . . . . . . . . . : Karta Dell Wireless 1397 WLAN Mini-Card

   Adres fizyczny. . . . . . . . . . : 78-E4-00-E2-5D-24

   DHCP włączone . . . . . . . . . . : Tak

   Autokonfiguracja włączona . . . . : Tak


Karta Ethernet Połączenie lokalne:


   Sufiks DNS konkretnego połączenia :

   Opis. . . . . . . . . . . . . . . : Realtek PCIe GBE Family Controller

   Adres fizyczny. . . . . . . . . . : B8-70-F4-22-F5-66

   DHCP włączone . . . . . . . . . . : Nie

   Autokonfiguracja włączona . . . . : Tak

   Adres IPv6 połączenia lokalnego . : fe80::3c14:65af:983a:6e66%10(Preferowane)


   Adres IPv4. . . . . . . . . . . . . : 172.16.0.2(Preferowane)

   Maska podsieci. . . . . . . . . . : 255.255.255.0

   Brama domyślna. . . . . . . . . . : 172.16.0.1

   Identyfikator IAID DHCPv6 . . . . : 250629538

   Identyfikator DUID klienta DHCPv6 : 00-01-00-01-14-04-FB-8A-F0-4D-A2-48-3A-F6


   Serwery DNS . . . . . . . . . . . : 194.204.159.1

                                       194.204.152.34

   NetBIOS przez Tcpip . . . . . . . : Włączony


Karta tunelowa isatap.{B377DA2B-8A59-4D0A-B148-EC425EACD905}:


   Stan nośnika . . . . . . . . . . .: Nośnik odłączony

   Sufiks DNS konkretnego połączenia :

   Opis. . . . . . . . . . . . . . . : Karta Microsoft ISATAP

   Adres fizyczny. . . . . . . . . . : 00-00-00-00-00-00-00-E0

   DHCP włączone . . . . . . . . . . : Nie

   Autokonfiguracja włączona . . . . : Tak


Karta tunelowa isatap.{2D657746-6959-41BF-8733-A88D3FF7350B}:


   Stan nośnika . . . . . . . . . . .: Nośnik odłączony

   Sufiks DNS konkretnego połączenia :

   Opis. . . . . . . . . . . . . . . : Karta Microsoft ISATAP #2

   Adres fizyczny. . . . . . . . . . : 00-00-00-00-00-00-00-E0

   DHCP włączone . . . . . . . . . . : Nie

   Autokonfiguracja włączona . . . . : Tak


Karta tunelowa Połączenie lokalne* 3:


   Stan nośnika . . . . . . . . . . .: Nośnik odłączony

   Sufiks DNS konkretnego połączenia :

   Opis. . . . . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface

   Adres fizyczny. . . . . . . . . . : 00-00-00-00-00-00-00-E0

   DHCP włączone . . . . . . . . . . : Nie

   Autokonfiguracja włączona . . . . : Tak

route print

===========================================================================

Lista interfejsów

 11...78 e4 00 e2 5d 24 ......Karta Dell Wireless 1397 WLAN Mini-Card

 10...b8 70 f4 22 f5 66 ......Realtek PCIe GBE Family Controller

  1...........................Software Loopback Interface 1

 16...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP

 15...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP #2

 17...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface

===========================================================================


Tabela tras IPv4

===========================================================================

Aktywne trasy:

Miejsce docelowe w sieci Maska sieci Brama Interfejs Metryka

          0.0.0.0 0.0.0.0 172.16.0.1 172.16.0.2 276

        127.0.0.0 255.0.0.0 On-link 127.0.0.1 306

        127.0.0.1 255.255.255.255 On-link 127.0.0.1 306

  127.255.255.255 255.255.255.255 On-link 127.0.0.1 306

       172.16.0.0 255.255.255.0 On-link 172.16.0.2 276

       172.16.0.2 255.255.255.255 On-link 172.16.0.2 276

     172.16.0.255 255.255.255.255 On-link 172.16.0.2 276

        224.0.0.0 240.0.0.0 On-link 127.0.0.1 306

        224.0.0.0 240.0.0.0 On-link 172.16.0.2 276

  255.255.255.255 255.255.255.255 On-link 127.0.0.1 306

  255.255.255.255 255.255.255.255 On-link 172.16.0.2 276

===========================================================================

Trasy trwałe:

  Adres sieciowy Maska sieci Adres bramy Metryka

          0.0.0.0 0.0.0.0 172.16.0.1 Domyślne

===========================================================================


Tabela tras IPv6

===========================================================================

Aktywne trasy:

 Jeśli Metryka Miejsce docelowe w sieci Brama

  1 306 ::1/128 On-link

 10 276 fe80::/64 On-link

 10 276 fe80::3c14:65af:983a:6e66/128

                                    On-link

  1 306 ff00::/8 On-link

 10 276 ff00::/8 On-link

===========================================================================

Trasy trwałe:

  Brak

Dodane 18.06.2013 (Wt) 22:01

Dobra działa wszystko, przeinstalowałem system i zrobiłem jeszcze raz wszystko po kolei i zadziałało :slight_smile: dzięki za pomoc! :smiley:


(roobal) #16

Nie ma sprawy.