Извечный вопрос: Как настроить две сетевые карты на Linux?

TolikCorp

Участник
Сообщения
874
Реакции
334
Debian 6

Всем привет, хочу настроить две сетевые карты.
Сначала клонировал мак адрес и настроил вторую сетевую:
interfaces
C-подобный:
allow-hotplug eth0
iface eth0 inet dhcp
hwaddress ether 00:02:44:34:E0:50

allow-hotplug eth1
iface eth1 inet static
address 10.0.0.1
netmask 255.255.255.0
Далее раскомментировал в sysctl.conf
C-подобный:
net.ipv4.ip_forward=1

Потом по совету БМВ нужно было прописать в rc.local
C-подобный:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
(ppp0, или нечтно подобное должно появиться при написании ifconfig) НО! у меня есть только eth0 (ип выдан верный) eth1 и loopback

Испробовал по очереди:
C-подобный:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
iptables -t nat -A POSTROUTING -o dhcp -j MASQUERADE

Т.к. это не получилось - пробовал другое, USNET=10.0.0.0/24 PUBIP=тут мой ip WAN_ADAPTER=eth0

C-подобный:
iptables -t nat -A POSTROUTING -p tcp -o $WAN_ADAPTER -s  $USNET  -j SNAT --to-source $PUBIP
iptables -t nat -A POSTROUTING -p udp -o $WAN_ADAPTER -s  $USNET  -j SNAT --to-source $PUBIP
iptables -t nat -A POSTROUTING -p icmp -o $WAN_ADAPTER -s $USNET  -j SNAT --to-source $PUBIP
Не получилось и так.
Далее вернул к прежнему. Ребят, помогите настроить.


Комп, подключенный к eth1 настроен так: ip: 10.0.0.2 маска стандарт 255.255.255.0
Подключился через путти к 10.0.0.1.
Так как я клонировал мак адрес роутера, на который настроен инет - ifconfig выдал верные значения ип, шлюза... (когда использовал стандартный мак - настройки не выдавались). Писал в путти ping -c 4 google.ru ответ на это вроде бы unknown host, что очень странно!

Смотрю инфу: http://blog.aloneunix.ru/2011/11/debian.html то же самое.
Я только не пойму - если ип выдался верный, и я с путти пытался пинговать гугол, не получилось. хммм

"Теперь применим только что отредактированный конфиг:
~$ sudo sysctl -p" эта команда разорвет соединения игроков с сервом?
 
Последнее редактирование:

tabletka99

Участник
Сообщения
18
Реакции
6
Них не понял, понаписал кучу всего, а вопроса так и не задал ;)))

что значит настроить две сетевые карты? просто ипы им дать или там два шлюза еще???
 

tiger_by

Гл. Админ SourceGames.RU
Сообщения
631
Реакции
278
В самом деле, какова цель? Что чем должно быть?
 

BMW M6

Участник
Сообщения
1,217
Реакции
534
1) Добавляем блок в /etc/network/interface

C-подобный:
auto eth1
iface eth1 inet static
 address 192.168.2.1
 netmask 255.255.255.0

2. в /etc/sysctl.conf раскомменчиваем строчку (или добавляем если нет): net.ipv4.ip_forward=1

3. в /etc/rc.local перед exit 0:
C-подобный:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

4. Узнаём свои dns адреса командой. У меня лежат тут /etc/resolv.conf

5.Настраиваем роутер на статику:
ip 192.168.2.2
маска: 255.255.255.0
шлюз: 192.168.2.1

и твои dns адреса.
 

tabletka99

Участник
Сообщения
18
Реакции
6
Вообще маскарад не оч удобная штука для гейта лучше snat и систему меньше грузит лишними правилами...
 

TolikCorp

Участник
Сообщения
874
Реакции
334
Цель получить на выходе етх1 инет. Опробую дополение БМВ, отпишусь.
 

tiger_by

Гл. Админ SourceGames.RU
Сообщения
631
Реакции
278
Я полагаю что есть eth0 - это WAN, он же внешний IP.
eth1 - это LAN, оно же локальный интерфейс, раздающий сеть еще неким хостам.
Или не так?
 

LEII4A

Участник
Сообщения
741
Реакции
135
TolikCorp,
Пажалста я надеюсь, цель сего безобразия я понял правильно:-D
только там нужно морозить rc.local иначе dns слетают при отключении eth1, вот команды в консоль:
PHP:
$ sudo touch /etc/network/if-up.d charge_dns
$ sudo nano /etc/network/if-up.d/charge_dns

#! /bin/sh
echo "nameserver ip" > /etc/resolv.conf
echo "nameserver ip" >> /etc/resolv.conf

sudo chmod +x /etc/network/if-up.d/charge_dns
Вместо ip естественно твои dns сервера. На debian 6 все вышеуказанное работало прекрасно, хоть и громоздко все...
 

TolikCorp

Участник
Сообщения
874
Реакции
334
Я полагаю что есть eth0 - это WAN, он же внешний IP.
eth1 - это LAN, оно же локальный интерфейс, раздающий сеть еще неким хостам.
Или не так?
Всё верно

Добавлено через 3 минуты
Капец какой-то, на етх0 ип выдался верный, вроде даже всё ок. Пишу ping -c 4 google.ru - просто не хочет ответ - unknown host. Подключаю обратно к роутеру - пинг нормально рабит.
 
Последнее редактирование:

tiger_by

Гл. Админ SourceGames.RU
Сообщения
631
Реакции
278
Надо настраивать eth0 согласно настройкам, которые выдал провайдер.
 

TolikCorp

Участник
Сообщения
874
Реакции
334
Настройки етх0 получает по дхсп, у провайдера привязка этого дела по маку. А мак я клонировал.
 

TolikCorp

Участник
Сообщения
874
Реакции
334
хмм, прочитал статью, смотрю "5.3.4. /etc/resolv.conf" и немного недопонял, что в нем быть должно.
Вот сейчас, когда сервер подключен к роутеру содержание данного файла такое
domain cn.ru
search cn.ru novotelecom.ru
nameserver 192.168.0.1

Добавлено через 11 минут
Буду пробовать
$ sudo touch /etc/network/if-up.d charge_dns
$ sudo nano /etc/network/if-up.d/charge_dns

#! /bin/sh
echo "nameserver ip" > /etc/resolv.conf
echo "nameserver ip" >> /etc/resolv.conf

sudo chmod +x /etc/network/if-up.d/charge_dns
 
Последнее редактирование:

tabletka99

Участник
Сообщения
18
Реакции
6
в /etc/resolv.conf

сотри все и добавь две строки

nameserver 8.8.8.8
nameserver 8.8.4.4

это днс гугла и попробуй... должно работать все... в сети что ты раздаешь на етх1 так же указывай эти днс.
 

TolikCorp

Участник
Сообщения
874
Реакции
334
tabletka99, "в сети что ты раздаешь на етх1 так же указывай эти днс." это приписать в компе, подключенному к етх1?
 

TolikCorp

Участник
Сообщения
874
Реакции
334
1) Когда сервер подключен к роутеру, то на етх1 инет есть (в свойствах подключения клиента указал ДНС провайдера).
Пинги:
Last login: Sun Jun 10 07:34:14 2012 from 192.168.5.2
root@debianserver:~# ping -c 4 178.49.245.129
PING 178.49.245.129 (178.49.245.129) 56(84) bytes of data.
64 bytes from 178.49.245.129: icmp_req=1 ttl=64 time=1.29 ms
64 bytes from 178.49.245.129: icmp_req=2 ttl=64 time=1.19 ms
64 bytes from 178.49.245.129: icmp_req=3 ttl=64 time=1.20 ms
64 bytes from 178.49.245.129: icmp_req=4 ttl=64 time=1.49 ms

--- 178.49.245.129 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 1.196/1.296/1.492/0.121 ms
root@debianserver:~# ping -c 4 hlmod.ru
PING hlmod.ru (94.127.69.212) 56(84) bytes of data.
64 bytes from s094127069212.m.truevds.ru (94.127.69.212): icmp_req=1 ttl=52 time=59.1 ms
64 bytes from s094127069212.m.truevds.ru (94.127.69.212): icmp_req=2 ttl=52 time=52.8 ms
64 bytes from s094127069212.m.truevds.ru (94.127.69.212): icmp_req=3 ttl=52 time=52.5 ms
64 bytes from s094127069212.m.truevds.ru (94.127.69.212): icmp_req=4 ttl=52 time=53.4 ms

--- hlmod.ru ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
rtt min/avg/max/mdev = 52.507/54.488/59.194/2.750 ms
root@debianserver:~#


Содержание resolv.conf
domain cn.ru
search cn.ru novotelecom.ru
nameserver 192.168.0.1
2) Когда сервер подключен напрямую к инету, то на етх1 инета (в свойствах подключения клиента указал ДНС провайдера)., как и на етх0 нету.
3) Сделал
$ sudo touch /etc/network/if-up.d charge_dns
$ sudo nano /etc/network/if-up.d/charge_dns

#! /bin/sh
echo "nameserver ip" > /etc/resolv.conf
echo "nameserver ip" >> /etc/resolv.conf

sudo chmod +x /etc/network/if-up.d/charge_dns
- инета нет.
4) Пинговал шлюз -
--- 178.49.245.129 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 1.196/1.296/1.492/0.121 ms

Когда это перепробовал, изменил charge_dns:
#! /bin/sh
echo "domain cn.ru" >> /etc/resolv.conf
echo "search cn.ru novotelecom.ru" >> /etc/resolv.conf
echo "nameserver 178.49.132.66" >> /etc/resolv.conf
echo "nameserver 178.49.132.67" >> /etc/resolv.conf

До гугла с его ДНСами и провайдера не смог достучаться во всех случаях, кроме первого, где сервер подключен к роутеру.

Добавлено через 49 минут
Все же интересно, почему даже шлюз не пингуется...
 
Последнее редактирование:
Сверху Снизу