Linux за българи: Форуми

Linux секция за начинаещи => Настройка на хардуер => Темата е започната от: p3tzata_ в Sep 10, 2007, 15:42



Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 10, 2007, 15:42
Ще съм благодарен да помогнете за следната ситуация, а тя е:

Има мрежа с IP 192.168.0.0 с рутер 192.168.0.1 и от там към internet;
Има комп. с Fedora 7 - (които работи идеално в тази мрежа) с 2 LAN карти, искам този комп. да рутира към друга мрежа например: 192.168.3.0
в дирек. /etc/sysconfig/networkig/devices има файлове:
      ifcfg-eth0:                                               ifcfg-eth1:
GATEWAY=192.168.0.1                       DEVICE=eth1:1                
TYPE=Ethernet                                    BOOTPROTO=static
DEVICE=eth0:0                                   NETMASK=255.255.255.0
BOOTPROTO=none                             BROADCAST=192.168.3.255
NETMASK=255.255.255.0                    IPADDR=192.168.3.1
IPADDR=192.168.0.222                       NETWORK=192.168.3.0
PEERDNS=yes                                   ONBOOT=yes
ONPARENT=yes                                NAME=eth1:1
ONBOOT=yes

route показва следното:
Destination     Gateway         Genmask         Flags Metric Ref    Use
192.168.3.0        *               255.255.255.0      U     0      0        0 eth1
192.168.0.0        *               255.255.255.0      U     0      0        0 eth0
192.168.122.0     *               255.255.255.0     U     0      0        0 virbr0 (нямам представа това от къде идва)
default            192.168.0.1     0.0.0.0            UG    0      0        0 eth0

Закачил съм за eth1 един HUB и от там към друг комп. с
IP-192.168.3.10/255.255.255.0 ; defaut gateway-192.168.3.1
от които права ping 192.168.3.1 и ми връща "timed  out",
а целта им е на този комп. да има inernet, както и да има ping към другите компютри от 192.168.0.0


Къде бъркам и какво още не съм настройл ?!? (нещо ако е останало неясно пишете)





Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 10, 2007, 16:20
Че няма ping от 192.168.3.10 до 192.168.3.1 може да се дължи на кофти мрежови кабел, кофти hub, кофти мрежови карти или защитна стена на някоя от двете машини.

Иначе за да има интернет на втората машина трябва да й зададеш шлюз по подразбиране и DNS сървъри. Предполагам ще трябва да са същите както на машините от 192.168.0.0.

За целта трябва (както си написал) да е включена маршрутизацията на машината с адрес 192.168.3.1. Това става последния начин:

sysctl -w net.ipv4.ip_forward=1

За препоръчване е също да добавиш следното в /etc/sysctl.conf:

net.ipv4.ip_forward=1

Това е за да работи маршрутизацията и след като рестартираш машината.


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 10, 2007, 17:09
спрял съм защитните стени и на двата компютъра, изпълних
sysctl -w net.ipv4.ip_forward=1, за неработещ hub, lan карти и кабели не може и да става дума.

Пинг от 192.168.3.1 към 192.168.3.10 и обратно няма...





Титла: Моля помогнете за един router
Публикувано от: dedmin в Sep 10, 2007, 17:13
Като вариант можеш да прихванеш пакетите на eth1, например с Wireshark,  и да видиш има ли echo request от 192.168.3.10

За virbr0 интерфейса -
"virbr0 was being set up by the libvirtd service. I wasn't using any virtualization, so I stopped the service and the problem went away"





Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 10, 2007, 17:30
На 192.168.3.10:

ifconfig -a
route -n
sysctl -a | grep icmp
iptables -nvL

На 192.168.3.1:
ifconfig -a
sysctl -a | grep icmp
iptables -nvL


copy/paste





Титла: Моля помогнете за един router
Публикувано от: arda_kj в Sep 10, 2007, 17:52
За да се виждат двете мрежи трябва или bridge между двате ethernet карти на Фдорката или forward на пакетите между двете мрежи.

Да допълня по-ясно първото написано от Наркос:
Ей това
Цитат
IP-192.168.3.10/255.255.255.0 ; defaut gateway-192.168.3.1

става
Примерен код
IP-192.168.3.10/255.255.255.0; gateway 192.168.3.1  defaut gateway 192.168.0.1

Т.е. компютрите от мрежа 192.168.3.0/255.255.255.0 трябва да знаят как да достъпват мрежа 192.168.0.0/255.255.255.0; Т.е. трябва на всеки копм от двете мрежи да добавиш и рутове как да достигат другата мрежа, т.е.
ако всички машини са Линукс, то с това
Примерен код
route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.3.1

казваш на комп. от мрежа 192.168.3.0 как да стигнат мрежа 192.168.0.0;
А с това
Примерен код
route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.0.222

казваш на комп. от мрежа 192.168.0.0 как да стигнат мрежа 192.168.3.0;
Съответно добавяш на всеки комп независимо от коя мрежа е default gw да му е IP на рутера ти, т.е. default gw 192.168.0.1. Демек добавяш още и
Примерен код
route add default gw 192.168.0.1

за всеки комп.
И естествено добавяш ДНС-ите на доставчика на всеки комп., който искаш да има интернет.





Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 10, 2007, 17:53
edit





Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 11, 2007, 09:53
От нещата, които си дал всичко изглежда наред. Според мен на теория трябва да минава ping м/у тях.

В такъв случай аз бих проверил 3 пъти мрежовите карти, кабелите и hub-а. Бих пробвал с кръстосан кабел. Такива неща...


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 11, 2007, 12:16
Вижте сега момчета нов съм в Linux някой неща не са ми ясни, за това и пиша в този форум,
В момента имам пинг от 192.168.3.10 към 192.168.3.1,както от
192.168.3.10 към 192.168.0.222
но нямам пинг от 192.168.3.10 към някои от компютрите от 192.168.0.0

Ще започна от самото начало. На въпросния комп с Fedora му сложих втора лан карта и му конфикурирах интерфейсите както следва по надолу
после изпълних:
route add -net 192.168.3.0 netmask 255.255.255.0
route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.3.1
iptables -t nat -I POSTROUTING -s 192.168.3.0/24 -o eth0 -j MASQUERADE каквото и да означава
/etc/init.d/libvirtd stop -  
/sbin/chkconfig --list libvirtd -  
/sbin/hkconfig --level 345 libvirtd off
servise iptables restart
sysctl -w net.ipv4.ip_forward=1

АКО НЕЩО СЪМ ПРОПУСНАЛ ИЛИ НЕ СЪМ НАПРАВИЛ КАКТО ТРЯБВА МОЛЯ ПИШЕТЕ

Вижте по подробно какво ми връщат следните команти:

ifconfig -a

eth0      Link encap:Ethernet  HWaddr 00:19:66:05:70:02
          inet6 addr: fe80::219:66ff:fe05:7002/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1081 errors:0 dropped:0 overruns:0 frame:0
          TX packets:945 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:522216 (509.9 KiB)  TX bytes:136706 (133.5 KiB)
          Interrupt:19 Base address:0x4000

eth0:0    Link encap:Ethernet  HWaddr 00:19:66:05:70:02
          inet addr:192.168.0.222  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:19 Base address:0x4000

eth1      Link encap:Ethernet  HWaddr 00:A0:D2:13:34:41
          inet6 addr: fe80::2a0:D2ff:fe13:3441/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:30 errors:0 dropped:0 overruns:0 frame:0
          TX packets:64 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4728 (4.6 KiB)  TX bytes:13166 (12.8 KiB)
          Interrupt:20 Base address:0xec00

eth1:0    Link encap:Ethernet  HWaddr 00:A0:D2:13:34:41
          inet addr:192.168.3.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:20 Base address:0xec00

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:10712 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10712 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:89900419 (85.7 MiB)  TX bytes:89900419 (85.7 MiB)

tmpbridge Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          inet addr:192.168.0.222  Bcast:192.168.0.255  Mask:255.255.255.0
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
чесно казано нямам представа от къде идва този  мост tmpbridge, дори и незнам как трябва да го махна
------------------------------------------------------------------------------------------


route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.3.0     0.0.0.0         255.255.255.0     U     0      0        0 eth1
192.168.0.0     192.168.3.1  255.255.255.0    UG    0      0        0 eth1
192.168.0.0     0.0.0.0         255.255.255.0     U     0      0        0 eth0
0.0.0.0           192.168.0.1     0.0.0.0              U     0      0        0 eth0
------------------------------------------------------------------------------------------


iptables -L -t nat

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  0    --  192.168.3.0/24       anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination


тази команта чесно незнам какво показва
------------------------------------------------------------------------------------------


sysctl -a | grep icmp

net.netfilter.nf_conntrack_icmp_timeout = 30
net.ipv6.icmp.ratelimit = 250
net.ipv4.icmp_ratemask = 6168
net.ipv4.icmp_ratelimit = 250
net.ipv4.icmp_errors_use_inbound_ifaddr = 0
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_echo_ignore_all = 0

тази команта чесно незнам какво показва

добавих и : iptables -t nat -I POSTROUTING -s 192.168.3.0/24 -o eth0 -j MASQUERADE каквото и да означава
/etc/init.d/libvirtd stop -  
/sbin/chkconfig --list libvirtd -  
/sbin/hkconfig --level 345 libvirtd off
servise iptables restart

НАПРАВО ЩЕ СЕ ПОБЪРКАМ





Титла: Моля помогнете за един router
Публикувано от: dedmin в Sep 11, 2007, 13:48
Аз съм го направил това в къщи, но съм на Убунту. Обади се на скайпа dedinka1971 че не ми се пише.


Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 11, 2007, 13:56
Правилото за маскиране не ти трябва. Това би трябвало да е реализирано на 192.168.0.1.

Иначе ок ми изглеждат нещата, единствено трябва да сложиш маршрут към 192.168.0.0 на 192.168.3.10 и после за default gw да му сложиш 192.168.0.1. Т.е. ако питаш мен работата по RedHat-а е свършена, остава да настроиш Windows-а.

route add 192.168.0.0 mask 255.255.255.0 192.168.3.1
route add 0.0.0.0 mask 255.255.255.255 192.168.0.1

Идея си нямам обаче как да стане да се запазват тея настройки след рестартиране.


Титла: Моля помогнете за един router
Публикувано от: alex_c в Sep 11, 2007, 15:28
Наркос, защо объркваш човека, бе?
Сигурен ли си, че това, което си написал, ще тръгне въобще?
p3tzata_@ в общи линии всичко е вярно, само защо си сложил това рутиране за 192.168.0.0/24 към 192.168.3.1
По този начин, въпреки че с вдигането на адрес 192.168.0.222 ядрото правилно смята, че тази мрежа е зад eth0, което е видно и от реда:
192.168.0.0     0.0.0.0         255.255.255.0     U     0      0        0 eth0
в рутиращата таблица, ти принудително завърташ тази мрежа да ти е и тя зад 192.168.3.1 на eth1.
Махни реда:
route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.3.1
може да махнеш и реда в iptables за маскирането и трябва да проработи всичко.
Best wishes!
Alex


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 11, 2007, 17:30
Благодаря на всички, които взеха участие в тази тема.
Получи се компромисно решение, като инсталирах
Firestarter. Въпреки че целта ми беше да го направя без такива допълнителини програмки. Без тази програма нещата не вървят.
И все пак ако може напишете кой ред да изтрия в iptables за маскирането.

Ако има още мнения по темата ще ги прочета  ???


Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 11, 2007, 17:32
alex_c, би ли споделил кое те притеснява по-точно?

Ако правилно разбирам, по твоята схема би трябвало 192.168.3.1 да е настроен като default gateway на 192.168.3.10 и да препраща пакетите, които идват от 192.168.3.10 към неговия си default gw, а именно 192.168.0.1. Дотук добре, но за да сработи цялата работа трябва да са изпълнени няколко условия:

1. конфигурацията на 192.168.0.1 да позволява маскиране на пакети от 192.168.3.0/24

2. 192.168.0.1 да има маршрут към 192.168.3.0/24 през 192.168.0.222

Ако първото не е изпълнено, то вероятно пакета изобщо няма да излезне от 192.168.0.1, дори да излезне ще бъде скоропостижно издропен (src 192.168.бла.бла)

Ако второто не е изпълнено, при получаването на отговора на пакета от 192.168.3.10, 192.168.0.1 ще го прати към своя default gw, който силно се съмнявам да е 192.168.0.222.

Сега ако бъркам някъде моля да ми посочиш къде и ако може да ми обясниш с какво обърквам човека.


Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 11, 2007, 17:37
Опа, почнах и аз да пиша глупости... :(

Условията от предишния ми пост трябва да са изпълнени и във варианта с добавяне на маршрутите на XP-то...

Ако не е възможно това май единствено с маскиране става.


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 11, 2007, 18:21
Може да не съм се изразил точно за това ще го илюстрирам

това е мрежата в момента:

Цитат
                     197.18.35.12-ppp0
                                        (komp)
                                  192.168.0.1 -eth0                                                                             |
                                            |
                                     (switch)
                                            |
               ................................................................
                |                           |                               |
          192.168.0.10      192.168.0.222-eth0    192.168.0.50
               (komp)                (komp)                     (komp)
                                  



а трябва да стане така без да правя настройки по 192.168.0.1
Цитат
                     197.18.35.12-ppp0
                                        (komp)
                                  192.168.0.1 -eth0                                                                            |
                                           |
                                     (switch)
                                            |
               ................................................................
                |                           |                               |
          192.168.0.10      192.168.0.222-eth0    192.168.0.50
                (komp)               (komp)                      (komp)
                                     192.168.3.1-eth1  
                                            |
                                            |
                                        (switch)
                                            |
        ......................................................................
                   |                          |                           |
         192.168.3.10          192.168.3.20      192.168.3.30
             (komp)                   (komp)                (komp)







Титла: Моля помогнете за един router
Публикувано от: dedmin в Sep 11, 2007, 20:07
Примерен код
#!/bin/sh

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

#
# delete all existing rules.
#
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X

# Always accept loopback traffic
iptables -A INPUT -i lo -j ACCEPT


# Allow established connections, and those not coming from the outside
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow outgoing connections from the LAN side.
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

# Masquerade.
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

# Don't forward from the outside to the inside.
iptables -A FORWARD -i eth1 -o eth1 -j REJECT

# Enable routing.
echo 1 > /proc/sys/net/ipv4/ip_forward



Ето скрипта който аз ползвам. Който ползва Федора да каже къде да го сложиш.


Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 11, 2007, 20:47
Сега, за Fedora най-културно би следвало да стане така май:

1. В /etc/sysctl.conf се добавя:

net.ipv4.ip_forward=1

2. Изпълнява се:

sysctl -w net.ipv4.ip_forward=1

3. Изпълнява се:

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

iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -d ! 192.168.3.0/24 -j SNAT --to-source 192.168.0.222
 
service iptables save


Това е май.

Всичко би трябвало да сработи при условие, че нещата са конфигурирани както на картинката, която си дал, т.е. на Fedora-та имаш на едната карта 192.168.0.222, на другата 192.168.3.1, а на машината с Windows имаш адрес 192.168.3.10 (или друг от същата мрежа), default gateway 192.168.3.1 (а не 192.168.0.1 както писах преди) и DNS сървъри тези на доставчика ти.

Не знам дали не си се отказал да четеш тука след като така и така си си решил проблема с Firestarter... Надявам се, че този път не съм написал пак някоя простотия. :)


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 12, 2007, 12:56
Не съм се отказал да чета  :) обаче преди да пробвам примерния код по-горе, ще помоля за малко помощ, че нещо се оплескаха интерфейсите с този Firestarter.

Когато отивам в Network Configuration-->Hardware ми се появява следното
 
Description         Type               Device          Status
 
Realtek             Ethernet           eth1            ok
nVidia               Ethernet          peth0           ok
bridge               Ethernet           eth0           system

ifconfig показва:

etho  192.168.0.222

eht1 192.168.3.1

peth0 (незнам си какво )

virbr0 (незнам си какво )
--------------------------------------------

когато изтрия графично този "bridge" и настройвам двете лан карит както следва

Description         Type               Device          Status
 
Realtek             Ethernet           eth1               ok
nVidia               Ethernet           eht0               ok

давам "Save"

после рестартирам : service network restart
и си мисля, че съм оправил всичко

и после като отивам пак в Network Configuration-->Hardware и виждам същото

Description         Type               Device          Status
 
Realtek             Ethernet           eth1            ok
nVidia               Ethernet          peth0           ok
bridge               Ethernet           eth0           system


Кажете как да го махна този "bridge"

П.П. Firestarter-a съм го направил да не се стартира





Титла: Моля помогнете за един router
Публикувано от: Hapkoc в Sep 12, 2007, 13:29
Bridge-а би трябвало да си има файлче, нещо от рода на:

/etc/sysconfig/network-scripts/ifcfg-br0

Триеш го и не би трябвало да се появява повече при service network restart.


Титла: Моля помогнете за един router
Публикувано от: dedmin в Sep 12, 2007, 14:27
Цитат
Yup Simon Bridge is correct. You are booting into a xen kernel. The reason peth0 won't work is because xen by default looks for eth0. If it doesn't find it networking won't come up. When your machine boots check the menu closely. You should see a choice of Fedora Core (2.6.18-1.2849.fc6) and Fedora Core (2.6.18-1.2849.fc6xen) or something similar depending on your kernel version. Choose the one that does not have xen in it.

You can change the default by editing /boot/grub/menu.lst and changing the line default=<some number> The first line that starts with title would be 0, the 2nd line that starts with title would be 1 and so on in the <some number> part above. Be sure and take out the <> as well.


Цитат
What is in /var/log/xen ?
http://fedora.redhat.com/docs/releas...sn-Kernel.html
You seem to have the virtualisation kernel installed instead of the native one. It may be that you are running an FC6 VM in XEN running in FC6 host. But this is not the default behavior - leading to questions about how you installed FC6.

Anyway:

What xen does is relabel the network interfaces so that the MAC address comes under peth0, peth1 etc and the rest of the information comes under veth0, veth1 etc.

veth1 is supposed to get renamed as eth1

As pointed out earlier, your peth0 shows up all the time ... presumably corresponding to the mac addr. of your on-board network card. peth1 will hold the mac address of your wireless card. Check if veth1 exists when eth1 dosn't.

Xen handles virtual-hardware network connections via a bridge-process (xenbr0) which is quite complex but allows multiple virtual machines to believe they have exculsive use of the hardware. Keeps 'em happy.

Wireless networking is tricky over the bridging method, and is better handled via routing instead. However, as I have not done this (nor am I contemplating doing this) I don't know how one would route a wireless connection from a virtual machine. However - this should be the direction of your research if you don't want to reinstall FC6.

http://fedora.redhat.com/docs/releas...alization.html
http://fedoraproject.org/wiki/FedoraXenQuickstartFC6

I'd check the grub menue to see if there is a non-xen boot option.
Failing that - possibly installing a plain i686 (say) kernel and/or uninstalling the kernel-xen package. (Or reinstall, making sure the native kernel is installed.)

The SMP part is a red herring - fedora is no longer issues a seperate kernel for smp and up systems. The installer detects which is needed and sets the appropriate bits.

But here's something I'd like to clarify - when eth1 is not present, do you see peth0 listed with your wireless card statistics?


Няма да е зле по-често да ползваш Goooooogle.


Титла: Моля помогнете за един router
Публикувано от: p3tzata_ в Sep 12, 2007, 16:13
Няма такъв файл /etc/sysconfig/network-scripts/ifcfg-br0 или подобен.

побвах с командата "brctl" изтрих всички мостове, които показа и пак като рестартирам компютъра пак ми се показва

Description         Type               Device          Status

Realtek             Ethernet           eth1            ok
nVidia               Ethernet          peth0           ok
bridge               Ethernet           eth0           system


Направо ще полудея  :crazy:


Титла: Моля помогнете за един router
Публикувано от: Dean79 в Sep 13, 2007, 09:00
Дали ако размениш кабелите които влизат в eth0 и eth1 няма да се оправи ???