Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Настроить NAT на определенный IP
Форумы портала PHP.SU » Серверное администрирование » Администрирование *nix » Настроить NAT на определенный IP

Страниц (1): [1]
 

1. createl - 15 Апреля, 2013 - 17:20:16 - перейти к сообщению
Опять у меня проблема с линуксом, целый день промаялся, а толку ноль. Может кто укажет на верный путь.
Вообщем, имеется такая картина
CODE (htmlphp):
скопировать код в буфер обмена
  1. eth0      Link encap:Ethernet  HWaddr 44:87:fc:ec:fd:d3
  2.           inet addr:192.168.5.115  Bcast:192.168.5.255  Mask:255.255.255.0
  3.           inet6 addr: fe80::4687:fcff:feec:fdc3/64 Scope:Link
  4.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  5.           RX packets:9790 errors:0 dropped:0 overruns:0 frame:0
  6.           TX packets:10369 errors:0 dropped:0 overruns:0 carrier:1
  7.           collisions:0 txqueuelen:1000
  8.           RX bytes:7452581 (7.4 MB)  TX bytes:889866 (889.8 KB)
  9.  
  10. lo        Link encap:Локальная петля (Loopback)
  11.           inet addr:127.0.0.1  Mask:255.0.0.0
  12.           inet6 addr: ::1/128 Scope:Host
  13.           UP LOOPBACK RUNNING  MTU:16436  Metric:1
  14.           RX packets:18 errors:0 dropped:0 overruns:0 frame:0
  15.           TX packets:18 errors:0 dropped:0 overruns:0 carrier:0
  16.           collisions:0 txqueuelen:0
  17.           RX bytes:1440 (1.4 KB)  TX bytes:1440 (1.4 KB)
  18.  
  19. ppp0      Link encap:Протокол PPP (Point-to-Point Protocol)
  20.           inet addr:46.183.167.215  P-t-P:46.183.162.6  Mask:255.255.255.255
  21.           UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1396  Metric:1
  22.           RX packets:10 errors:0 dropped:0 overruns:0 frame:0
  23.           TX packets:884 errors:0 dropped:0 overruns:0 carrier:0
  24.           collisions:0 txqueuelen:3
  25.           RX bytes:566 (566.0 B)  TX bytes:72914 (72.9 KB)
  26.  
  27. ppp1      Link encap:Протокол PPP (Point-to-Point Protocol)
  28.           inet addr:192.168.2.1  P-t-P:192.168.2.100  Mask:255.255.255.255
  29.           UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1396  Metric:1
  30.           RX packets:1287 errors:0 dropped:0 overruns:0 frame:0
  31.           TX packets:635 errors:0 dropped:0 overruns:0 carrier:0
  32.           collisions:0 txqueuelen:3
  33.           RX bytes:74988 (74.9 KB)  TX bytes:51259 (51.2 KB)
  34.  

eth0 это основной выход в интернет. ppp0 дополнительный (через него маршрутизация не идет) ppp1 и далее это соединения на сервер pptpd
прописал правило
CODE (htmlphp):
скопировать код в буфер обмена
  1. sudo iptables -t nat -I POSTROUTING -s 192.168.2.0/255.255.255.0 -j MASQUERADE
  2.  

НА компьютерах соединенных по vpn сразу появляется инет через 192.168.5.115. Кстати так тоже работает
CODE (htmlphp):
скопировать код в буфер обмена
  1. sudo iptables -t nat -I POSTROUTING -o eth0 -s 192.168.2.0/255.255.255.0 -j MASQUERADE

Но инет нужен через 46.183.167.215 и так уже не работает
CODE (htmlphp):
скопировать код в буфер обмена
  1. sudo iptables -t nat -I POSTROUTING -o ppp0 -s 192.168.2.0/255.255.255.0 -j MASQUERADE

и так пробовал тоже
CODE (htmlphp):
скопировать код в буфер обмена
  1.  sudo iptables -t nat -A POSTROUTING -s 192.168.2.0/255.255.255.0 -j SNAT --to-source 46.183.167.215

Может кто знает чего не хватает, подскажите пожалуйста.
2. EuGen - 15 Апреля, 2013 - 17:56:03 - перейти к сообщению
createl пишет:
-o ppp0
createl пишет:
ppp0 дополнительный (через него маршрутизация не идет)

Нужно сначала настроить маршрутизацию для использования этого интерфейса.
3. createl - 16 Апреля, 2013 - 10:48:31 - перейти к сообщению
EuGen пишет:
createl пишет:
-o ppp0
createl пишет:
ppp0 дополнительный (через него маршрутизация не идет)

Нужно сначала настроить маршрутизацию для использования этого интерфейса.

Это получается команда nat переправляет пакеты только из вне во внутреннюю сеть, а во внешку они маршрутизируются согласно таблице маршрутизации? Если так, то пробовал перенаправить пакеты из локальной подсети при помощи дополнительной таблицы маршрутизации и правил ip rule
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  sudo ip route add default via 46.183.167.215 table t3 sudo    
  3. и
  4.  sudo ip rule add from 192.168.2.101 table t3
  5.  

тем не менее, ничего не выходит.
(Добавление)
У меня ощущение, что последние два правила игнорируются и не работают.

 

Powered by ExBB FM 1.0 RC1