Инструменты пользователя

Инструменты сайта


сервис_nat

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
сервис_nat [2013/05/15 11:02]
val
сервис_nat [2019/07/17 11:24]
val [Ubuntu (iptables)]
Строка 1: Строка 1:
 ====== Сервис NAT ====== ====== Сервис NAT ======
  
 +  * [[http://​stackoff.ru/​ip/​|Определение внутреннего IP-адреса за NAT и VPN через WebRTC]]
 ===== Трансляция на основе адреса отправителя ===== ===== Трансляция на основе адреса отправителя =====
  
-==== Ubuntu (iptables) ====+==== Debian/Ubuntu (iptables) ====
  
 === Заполнение таблицы nat (eth1 - внешний интерфейс) === === Заполнение таблицы nat (eth1 - внешний интерфейс) ===
 <​code>​ <​code>​
-root@gate:​~#​ apt-get install conntrack+root@gate:​~#​ apt install conntrack
  
 root@gate:​~#​ cat nat.sh root@gate:​~#​ cat nat.sh
Строка 26: Строка 27:
 root@gate:​~#​ iptables -t nat -n -L -v --line-numbers root@gate:​~#​ iptables -t nat -n -L -v --line-numbers
  
-root@gate:​~# ​apt-get install netstat-nat +root@gate:​~# ​conntrack ​-L
- +
-root@gate:​~#​ netstat-nat -n+
 </​code>​ </​code>​
  
 === Сохранение состояния iptables === === Сохранение состояния iptables ===
 <​code>​ <​code>​
-root@gate:​~#​ iptables-save ​-c > /​etc/​iptables.rules+root@gate:​~#​ iptables-save > /​etc/​iptables.rules
 </​code>​ </​code>​
  
 === Восстановление состояния iptables === === Восстановление состояния iptables ===
 <​code>​ <​code>​
-root@gate:​~#​ iptables-restore ​-c < /​etc/​iptables.rules+root@gate:​~#​ iptables-restore < /​etc/​iptables.rules
 </​code>​ </​code>​
  
Строка 48: Строка 47:
 auto eth1 auto eth1
 iface eth1 inet static iface eth1 inet static
-  pre-up iptables-restore ​-c < /​etc/​iptables.rules+  pre-up iptables-restore < /​etc/​iptables.rules
 ... ...
 </​code>​ </​code>​
  
 +==== CentOS (firewalld) ====
 +
 +  * [[https://​www.mjhall.org/​centos-7-firewalld-nat-router.html|CentOS 7 firewalld NAT router]]
 ==== FreeBSD ==== ==== FreeBSD ====
  
Строка 67: Строка 69:
 pf_enable=yes pf_enable=yes
 </​code><​code>​ </​code><​code>​
-[gate:~] # /etc/rc.d/pf check+[gate:~] # service ​pf check
  
-[gate:~] # /etc/rc.d/pf start+[gate:~] # service ​pf start
  
 [gate:~] # pfctl -vs nat [gate:~] # pfctl -vs nat
- 
-[gate:~] # pfctl -vs state 
- 
-[gate:~] # pfctl -F states 
 </​code>​ </​code>​
  
 ===== Трансляция портов сервисов ===== ===== Трансляция портов сервисов =====
  
-==== Ubuntu (iptables) ====+==== Debian/Ubuntu (iptables) ====
  
 <​code>​ <​code>​
Строка 99: Строка 97:
 iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p tcp --dport 143 -j DNAT --to-destination 192.168.X.10:​143 iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p tcp --dport 143 -j DNAT --to-destination 192.168.X.10:​143
  
-#iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp --dport ​5006 -j DNAT --to-destination 192.168.X.10:​5060+#iptables -t nat -A PREROUTING -p tcp -s 192.168.100+X.0/​24 --dport 80 -j REDIRECT --to-port 3128 
 + 
 +#iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp --dport ​5060 -j DNAT --to-destination 192.168.X.10:​5060 
 +#iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p tcp --dport 5061 -j DNAT --to-destination 192.168.X.10:​5061
 #iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp -m multiport --dport 10000:20000 -j DNAT --to-destination 192.168.X.10 #iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp -m multiport --dport 10000:20000 -j DNAT --to-destination 192.168.X.10
 #iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp --dport 4569 -j DNAT --to-destination 192.168.X.10:​4569 #iptables -t nat -A PREROUTING -i eth1 --destination 172.16.1.X -p udp --dport 4569 -j DNAT --to-destination 192.168.X.10:​4569
Строка 107: Строка 108:
 root@gate:​~#​ sh nat.sh root@gate:​~#​ sh nat.sh
  
-root@gate:​~#​ iptables-save ​-c > /​etc/​iptables.rules+root@gate:​~#​ iptables-save > /​etc/​iptables.rules
 </​code>​ </​code>​
  
Строка 117: Строка 118:
 ext_if="​em1"​ ext_if="​em1"​
 corp_net="​192.168.X/​24"​ corp_net="​192.168.X/​24"​
-pppoe_corp_net="​192.168.100+X/​24"​+#pppoe_corp_net="​192.168.100+X/​24"​
  
 ssh_server="​192.168.X.10"​ ssh_server="​192.168.X.10"​
Строка 171: Строка 172:
  
 [gate:~] # pftop [gate:~] # pftop
-</​code>​ 
  
 +[gate:~] # pfctl -F state
 +</​code>​
 ===== Дополнительные материалы ===== ===== Дополнительные материалы =====
  
Строка 216: Строка 218:
  
 ipfw -f flush ipfw -f flush
 +ipfw add pass all from 172.16.1.254 to any
 ipfw add divert natd all from 172.16.1.0/​24 to any via en0 ipfw add divert natd all from 172.16.1.0/​24 to any via en0
 ipfw add divert natd all from 192.168.6.0/​24 to any via en0 ipfw add divert natd all from 192.168.6.0/​24 to any via en0
-ipfw add divert natd all from 192.168.5.0/​24 to any via en0 
 ipfw add divert natd all from any to 195.19.32.14 via en0 ipfw add divert natd all from any to 195.19.32.14 via en0
 ipfw add pass all from any to any ipfw add pass all from any to any
 </​code>​ </​code>​
- 
 ==== nat pptp ==== ==== nat pptp ====
  
сервис_nat.txt · Последние изменения: 2019/07/17 11:24 — val