Автор Тема: Конфигуриране на рутер/etc/network/if-up.d/  (Прочетена 2525 пъти)

ivanpaparaka

  • Участници
  • ***
  • Публикации: 8
    • Профил
Здравейте,
Започнах да си правя рутер, като идеята е от единя комп да рутира към втория. За сега успешно подкарах интернета на рутера (за целта трябваше да сменя МАС адреса на картата) и да подкарам мрежата между двата компа. Но интернет до втория не стига. Ето какво имам:


/etc/network/interfaces
Примерен код

#това е за интернета
pre-up ifconfig eth1 hw ether XX:XX:XX:XX:XX:XX
auto eth1
iface eth1 inet static
address xxxxxxxxxxx
netmask xxxxxxxxx
network xxxxxxxx
broadcast xxxxxxxxx
gateway xxxxxxxxxxx
dns-nameservers xxxxxxxxxxxx

#това е за вътрешната мрежа
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
up cat /root/config.ipt | iptables-restore
post-down iptables -t nat -F POSTROUTING


Пробвах със и без /root/config.ipt, резултатъ е същия но ето го съдържанието:
Примерен код

*nat
:PREROUTING ACCEPT [1584:72053]
:POSTROUTING ACCEPT [22:1415]
:OUTPUT ACCEPT [21:1375]
-A POSTROUTING -s 192.168.0.0/255.255.255.0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [279:32689]
:FORWARD ACCEPT [1433:171774]
:OUTPUT ACCEPT [2270:199813]
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i eth1 -m state --state INVALID,NEW -j REJECT --reject-with icmp-port$
COMMIT


/etc/network/options
Примерен код

ip_forward=yes


/etc/resolv.conf
Примерен код

nameserver xxxxxxxxx
nameserver xxxxxxxxx


/etc/sysctl.conf
Примерен код

net.ipv4.ip_forward = 1
net.ipv4.ip_local_port_range = 1024 32768


След това сложиш този скрип в /etc/network/if-up.d/
Примерен код

#!/bin/bash

PATH=/usr/sbin:/sbin:/bin:/usr/bin

# Изтриване на всички налични правила
#
EXT=eth1
INT=eth0

iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X

# Винаги приемане на loopback трафика
iptables -A INPUT -i lo -j ACCEPT


#Позволяване на установените връзки и тези, които не идват отвън
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! $EXT -j ACCEPT
iptables -A FORWARD -i $EXT -o $INT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Позволяване на изходящите пакети от  вътрешната ни мрежа.
iptables -A FORWARD -i $INT -o $EXT -j ACCEPT

# Маскиране.
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE

# Да не се препрщат от вън на вътре.
iptables -A FORWARD -i $EXT -o $EXT -j REJECT

#Заобикаляне на TTL филтрите при NAT
iptables -t mangle -A PREROUTING -i $EXT -j TTL --ttl-inc 1
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -o $EXT -j TTL --ttl-set 64


IP таблиците които ползвам са готови, не съм ги правил аз

А за капак при всеки рестарт имената на мрежовите карти се променят произволно и трябва да ръчно да променям /etc/network/interfaces. Например веднъж ISP се намира на eth0 после на eth2!
Активен

gizi_

  • Напреднали
  • *****
  • Публикации: 521
  • Distribution: Debian/Lenny, SLES/9-11
  • Window Manager: Gnome 2.22.3
    • Профил
Конфигуриране на рутер/etc/network/if-up.d/
« Отговор #1 -: Dec 18, 2006, 14:17 »
1-во според мен теми относно твоя проблем има много.След което смятам и че темата ти не е за напреднали ама на дали сам и аз този дето да го казва.Потърси из форума.Скоро даже и аз бях писал тема относно това виж тук
естествено зависи и от това какво искаш самия ти.Успех!



Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Конфигуриране на рутер/etc/network/if-up.d/
« Отговор #2 -: Dec 18, 2006, 14:40 »
Така.

Това с промяната на имената на мрежовите карти ако се не лъжа се решава от /etc/modprobe.d/*. Там си създаваш файл (примерно interfaces), в който пишеш:

alias eth0 <module1>
alias eth1 <module2>

module1 и module2 са съответните модули за двете карти. Ако ползват един и същи май трябва да погледнеш опциите на модула (man modinfo) и да сложиш допълнителни option редове за всяка карта във въпросното файлче.


Относно липсата на интернет на втората машина - дал си повече от един ruleset за iptables. Дай да видим в момента с какъв работи машината:

iptables -nvL
iptables -t nat -nvL
iptables -t mangle -nvL

Във последния ruleset ми се струва, че ти липсва ACCEPT правило за SYN пакети отвътре навън във FORWARD веригата, но може да съм се объркал. Както и да е, дай да видим текущите правила.


Също - настройките на мрежата на втората машина какви са? Предполагам са ок, но дай да ги видим все пак.

И най-важно - какво ще рече "няма интернет". :)
Има ли ping м/у двете машини?
Има ли ping от втората машина до шлюза по подразбиране на маршрутизатора?
Има ли ping до DNS?



Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
SIOCADDRT:Network is unreachable
Настройка на програми
nplus 20 7722 Последна публикация Dec 16, 2005, 16:21
от nplus
Проблем с ubuntu 6.06 - network
Настройка на програми
mggeorgiev 2 1978 Последна публикация Jun 10, 2006, 10:16
от tech_noir
Apc и nut (network ups tools)
Настройка на хардуер
growchie 0 1898 Последна публикация Aug 14, 2006, 14:06
от growchie
Network configurator
Настройка на хардуер
emagi 8 3602 Последна публикация Dec 04, 2006, 13:06
от cat
Fedora 7 network install
Коментар
Kalin 0 1415 Последна публикация Jul 10, 2007, 16:17
от Kalin