Настройка маршрутов и раздача интернета

Предыстория: установил в 11.2 3g модем, для раздачи интернета по сети.
Сеть с подсетями, доступ к ним через шлюз.
Соответственно, при включенном модеме при подключении сетевого кабеля локальной сети этот шлюз перехватывается и интернет отключается.

**После подключения кабеля локальной сети >
**Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
192.168.134.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
0.0.0.0 192.168.134.8 0.0.0.0 UG 0 0 0 eth0

По советам с этого форума сначала выполнил такие команды:
sudo /sbin/route del default
sudo /sbin/route add default dev ppp0

Далее прописал маршруты, например, ip r a 192.168.144.0/24 via 192.168.134.8 dev eth0
192.168.144.0 - подсеть, к которой нужен доступ;
192.168.134.8 - шлюз, который наши две сети связывает.

Сеть сейчас управляется с помощью network manager.

Теперь вопросы - как правильно сохранить этот маршрут, чтобы он был задействован и после перезагрузки?

  • как раздать интернет по машинам в моей подсети? На машинах в сети установлена win xp.

в проводном соединении в закладке параметры IP v4 нашел закладку маршруты. Там ввел свои подсети (192.168.144.0/24).

Но как сделать шлюз по умолчанию ppp0 так и не догадался. Он работает только после
sudo /sbin/route del default
sudo /sbin/route add default dev ppp0

Как сделать, чтобы он автоматом становился на ppp0?:sarcastic:

Потихоньку двигаюсь дальше :slight_smile:

Создал файл rcend в /etc/rc.d/
>
**#! /bin/sh

This script simulates redhats rc.local (Add commands at the end)

BEGIN INIT INFO

Provides: rcend

Required-Start: $local_fs $remote_fs $network

X-UnitedLinux-Should-Start: $ALL

Required-Stop:

X-UnitedLinux-Should-Stop:

Default-Start: 3 5

Default-Stop: 0 1 2 6

Short-Description: Simulates rc.local

Description: Simulates redhats rc.local: contains commands to execute after system has booted (all services are already available)

END INIT INFO

Execute ony when service is started

case $1 in
start)

commands will be executed

;;
sudo /sbin/route del default
sudo /sbin/route add default dev ppp0**
***)
exit 0
;;
esac

#After this line you can add your own startup things

#End**

Пометил как исполняемый chmod +x rcend и создал на него ссылку ln -s rcend rc.end
В yast -> системные службы установил ему загружаться на 3 и 5 уровне.
Перезагружаюсь, выдает ошибку о том, что ppp0 не найдено. И правда, route -n показывает ppp0 только после подключения модемом к интернету, до этого есть только eth0.

что мне делать дальше, чтобы решить проблему?

Запретить маршрут по умолчанию на интерфейсе eth0. Отредактируйте файл конфигурации /etc/NetworkManager/connection-settings/имя_соединения:

[ipv4]
method=auto
never-default=true

у меня есть файл /etc/NetworkManager/system-connections/проводное соединение
>

[connection]
id=Проводное соединение
uuid=8c9ebd48-443c-492a-98eb-2cf0ad629110
type=802-3-ethernet
autoconnect=true
timestamp=0

[ipv4]
method=manual
dns=192.168.134.1;
addresses1=192.168.134.11;24;192.168.134.8;
routes1=192.168.0.0;16;192.168.134.8;0;
ignore-auto-routes=false
ignore-auto-dns=false
never-default=true

[802-3-ethernet]
speed=0
duplex=full
auto-negotiate=true
mtu=0

После этого все равно не работает, как надо. Я захожу, он уже по умолчанию. Подключаюсь модемом, модем не занимает место шлюза :frowning:

Есть еще файл -
/etc/NetworkManager/nm-system-settings.conf
>
[main]
plugins=ifcfg-suse,keyfile
no-auto-default=00:21:85:62:df:73,

После того, как я залез яст-системные службы, у меня при загрузке все тормозится на 3 init и требует пароля спустя какое-то время. Во время остановки пишет too many forks,PIDs get reused. Это, кстати, что такое?

Так вот, там напротив avahi-daemon стояло failed. я подумал, что останавливается загрузка из-за него и его загрузку на 3 и 5 уровне убрал через яст. Зашел в систему и инет с сеткой подружились :\

Правда, загрузка все равно тормозится, теперь из-за postfix… Он не подряд все перебирает, что мне отключать надо?

После внесения изменений необходимо перезапустить сеть rcnetwork restart. Естественно данная процедура работоспособна, если управление сетью осуществляется с помощью network manager.
По поводу служб создайте отдельную тему.

После внесения изменений в файл подключения, я перезагружал компьютер и все оставалось по-прежнему. rcnetwork restart ведь происходит при перезагрузке, я правильно понимаю?

На своем примере:

aliaksei@dhcppc0:/> cd /etc/sysconfig/network
aliaksei@dhcppc0:/etc/sysconfig/network> grep NETWORKMANAGER config #уточняем, с помощью чего управляется сеть
NETWORKMANAGER="no"
# This variable has no effect if NETWORKMANAGER=no.
aliaksei@dhcppc0:/etc/sysconfig/network>/sbin/route -n  #см. таблицу маршрутизации
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
86.57.151.0     192.168.1.1     255.255.255.224 UG    0      0        0 eth0
86.57.246.0     192.168.1.1     255.255.255.0   UG    0      0        0 eth0
….и т.д.
aliaksei@dhcppc0:/etc/sysconfig/network> sudo /sbin/yast2 sysconfig set NETWORKMANAGER="yes" #переводим упр-ие сетью в руки NetworkManager
Установка переменной 'NETWORKMANAGER' в 'yes': Успешно
aliaksei@dhcppc0:/etc/sysconfig/network> grep NETWORKMANAGER config  #уточняем, с помощью чего управляется сеть
NETWORKMANAGER="yes"
# This variable has no effect if NETWORKMANAGER=no.
aliaksei@dhcppc0:/etc/sysconfig/network> sudo /sbin/rcnetwork restart #перезапускаем сеть
redirecting to systemctl
aliaksei@dhcppc0:/etc/sysconfig/network> /sbin/route -n #см. таблицу маршрутизации
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0 #маршрут по умолчанию
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
192.168.1.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0
aliaksei@dhcppc0:/etc/sysconfig/network> sudo cat /etc/NetworkManager/system-connections/eth0 | grep never-default #см. файл конфигурации 
aliaksei@dhcppc0:/etc/sysconfig/network> echo "never-default=true" | sudo tee -a /etc/NetworkManager/system-connections/eth0  #вносим изменения 
never-default=true
aliaksei@dhcppc0:/etc/sysconfig/network> sudo cat /etc/NetworkManager/system-connections/eth0 | grep never-default
never-default=true
aliaksei@dhcppc0:/etc/sysconfig/network> sudo cat /etc/NetworkManager/system-connections/eth0  #читаем полное содержание файла конфигурации

[802-3-ethernet]
port=mii
mac-address=0:14:85:bb:5c:92

[connection]
id=eth0
uuid=bc89e75b-8a6a-460d-820b-4640ade58b05
type=802-3-ethernet
timestamp=1339090357

[ipv6]
method=ignore

[ipv4]
method=auto
never-default=true
aliaksei@dhcppc0:/etc/sysconfig/network> sudo /sbin/rcnetwork restart  #перезапускаем сеть
redirecting to systemctl
aliaksei@dhcppc0:/etc/sysconfig/network> /sbin/route -n #см. маршруты
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
192.168.1.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0
aliaksei@dhcppc0:/etc/sysconfig/network> ping -c5 192.168.1.1 #пингуем шлюз
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=254 time=4.22 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=254 time=0.680 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=254 time=0.454 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=254 time=0.483 ms
64 bytes from 192.168.1.1: icmp_seq=5 ttl=254 time=0.451 ms

--- 192.168.1.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.451/1.257/4.220/1.484 ms

Все работает. Большое спасибо за помощь!

Как решили проблему?

  1. в проводном соединении never-default=true

  2. напротив avahi-daemon стояло failed. я подумал, что останавливается загрузка из-за него и его загрузку на 3 и 5 уровне убрал через яст. Зашел в систему и инет с сеткой подружились.

Первое точно участвовало в решении проблемы, второе не знаю :slight_smile:

Кстати говоря, раз тема касается и раздачи интернета.

У меня прокси squid 2.7 (x86_64). его настройка:

acl CONNECT method CONNECT
acl all src all

acl allowed_hosts src “/etc/squid/allowed-hosts.txt”
acl localhost src 127.0.0.1/255.255.255.255

acl allow_ports port 80
acl allow_ports port 21

acl SSL_ports port 443 563

http_access deny !allow_ports
http_access deny CONNECT !SSL_ports

http_access allow localhost
http_access allow allowed_hosts
http_access allow SSL_ports
http_access deny all

не заходит на сайте vk.com с клиентских машин через прокси. с линукса заходит.
(в контакте)
открывает главную страницу, вводим адрес и пароль, жмем зайти, бегает полоска, типа подключается и так все и остается без движения.

/var/log/squid/access.log >
TCP_DENIED/403 1374 CONNECT login.vk.com:443 - NONE/- text/html

Все, разобрался…

+acl allow_ports port 443
:slight_smile: