Проброс порта с отображением внешнего (честного) source IP

Обсуждение оборудования и его настройки
Ответить
Oleg78
Сообщения: 7
Зарегистрирован: 02 июн 2014, 15:59

951G-2HnD, 6.23
1. Когда пробрасываю порт на внутреннюю линуксовую машину или на что угодно другое, находящиеся в локальной сети за NAT, то конект приходит от внутреннего IP микротика, а не от того внешнего с которого подключаюсь.

Вот так:

Код: Выделить всё

:~# w
 00:04:24 up 5 min,  2 users,  load average: 0,00, 0,02, 0,02
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.25.1     00:04    0.00s  0.01s  0.00s w


В таблице нат у меня только 1-я запись -- маскарадинг (srcnat) и, все остальные, пробросы портов. Я уже мозг сломал. Весь интернет облазил. Не могу понять как заставить микротик не подменять source IP.
2. Перепробовал много вариантов, в том числе и обнулял роутер с дефолтной и без дефолтной конфигураци с последующей минимальной настройкой. Результат не поменялся. Насколько я читал, для того чтоб результат был как у меня, люди добавляют еще одно правило "маскарад" для source IP. Но у меня то этого правила нет...
3.
 
# dec/10/2014 09:13:47 by RouterOS 6.23
# software id = 9B6Y-4RLL
#
/interface bridge
add admin-mac=D4:CA:6D:DA:BE:B3 mtu=1500 name=bridge-local
/interface wireless
set [ find default-name=wlan1 ] band=2ghz-b/g/n channel-width=\
20/40mhz-ht-above disabled=no distance=indoors l2mtu=2290 mode=ap-bridge \
ssid=Bunker
/interface ethernet
set [ find default-name=ether1 ] name=ether1-ISP1
set [ find default-name=ether2 ] name=ether2-ISP2
set [ find default-name=ether3 ] name=ether3-master-local
set [ find default-name=ether4 ] master-port=ether3-master-local name=\
ether4-slave-local
set [ find default-name=ether5 ] master-port=ether3-master-local name=\
ether5-slave-local
/ip neighbor discovery
set wlan1 discover=no
/interface wireless security-profiles
set [ find default=yes ] authentication-types=wpa2-psk eap-methods="" mode=\
dynamic-keys wpa-pre-shared-key=mykey wpa2-pre-shared-key=\
mykey
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=3des
/ip pool
add name=dhcp ranges=192.168.25.100-192.168.25.254
/ip dhcp-server
add address-pool=dhcp disabled=no interface=bridge-local lease-time=3d name=\
dhcp1
/system logging action
set 0 memory-lines=100
set 1 disk-lines-per-file=100
set 3 src-address=0.0.0.0
/interface bridge port
add bridge=bridge-local interface=wlan1
add bridge=bridge-local interface=ether3-master-local
/ip address
add address=192.168.25.1/24 comment="default configuration" interface=\
bridge-local network=192.168.25.0
add address=1.1.1.246/24 interface=ether1-ISP1 network=1.1.1.0
/ip dhcp-client
add add-default-route=no dhcp-options=hostname,clientid disabled=no \
interface=ether2-ISP2
/ip dhcp-server lease
add address=192.168.25.101 always-broadcast=yes mac-address=00:90:8F:03:20:E5 \
server=dhcp1
add address=192.168.25.100 client-id=1:6c:62:6d:40:9d:cc mac-address=\
6C:62:6D:40:9D:CC server=dhcp1
add address=192.168.25.102 client-id=1:0:90:a9:a7:ec:cd mac-address=\
00:90:A9:A7:EC:CD server=dhcp1
/ip dhcp-server network
add address=192.168.25.0/24 dns-server=192.168.25.1 gateway=192.168.25.1
/ip dns
set allow-remote-requests=yes servers=3.3.3.3
/ip firewall address-list
add address=3.3.3.0/24 comment="DNS ISP1" list=ISP1-dir
add address=4.4.4.0/24 comment="DNS ISP2" list=ISP2-dir
add address=5.5.5.0/24 comment=TV.ISP1 list=ISP1-dir
/ip firewall filter
add action=drop chain=input src-address=116.10.191.0/24
add action=drop chain=input src-address=58.218.199.0/24
add action=drop chain=input src-address=31.210.102.178
add action=drop chain=input src-address=189.41.16.194
add action=drop chain=input src-address=61.183.1.0/24
add action=drop chain=input src-address=61.174.51.0/24
add action=drop chain=input src-address=220.177.198.25
add chain=input protocol=icmp
add chain=forward protocol=icmp
add chain=input connection-state=established
add chain=forward connection-state=established
add chain=input connection-state=related
add chain=forward connection-state=related
add action=drop chain=input connection-state=invalid
add action=drop chain=forward connection-state=invalid
add chain=input protocol=udp
add chain=forward protocol=udp
add chain=forward src-address=192.168.25.0/24
add chain=input src-address=192.168.25.0/24
add chain=forward dst-port=22 protocol=tcp
add chain=forward dst-port=33333 protocol=tcp
add action=drop chain=input
add action=drop chain=forward
/ip firewall mangle
add action=mark-connection chain=forward in-interface=ether1-ISP1 \
new-connection-mark=ISP1-con
add action=mark-connection chain=forward in-interface=ether2-ISP2 \
new-connection-mark=ISP2-con
add action=mark-routing chain=prerouting connection-mark=ISP1-con \
new-routing-mark=ISP1-rt src-address=192.168.25.0/24
add action=mark-routing chain=prerouting connection-mark=ISP2-con \
new-routing-mark=ISP2-rt src-address=192.168.25.0/24
add action=mark-routing chain=prerouting connection-state=new \
dst-address-list=ISP1-dir new-routing-mark=ISP1-rt
add action=mark-routing chain=prerouting connection-state=new \
dst-address-list=ISP2-dir new-routing-mark=ISP2-rt
add action=mark-connection chain=input disabled=yes in-interface=ether1-ISP1 \
new-connection-mark=ISP1-con-in
add action=mark-routing chain=output connection-mark=ISP1-con-in disabled=\
yes new-routing-mark=ISP1-rt
add action=mark-connection chain=input disabled=yes in-interface=ether2-ISP2 \
new-connection-mark=ISP2-con-in
add action=mark-routing chain=output connection-mark=ISP2-con-in disabled=\
yes new-routing-mark=ISP2-rt
/ip firewall nat
add action=masquerade chain=srcnat
add action=masquerade chain=srcnat disabled=yes out-interface=ether2-ISP2
add action=dst-nat chain=dstnat dst-port=2204 in-interface=ether1-ISP1 \
protocol=tcp to-addresses=192.168.25.103 to-ports=22
add action=dst-nat chain=dstnat dst-port=33333 in-interface=ether1-ISP1 \
protocol=tcp to-addresses=192.168.25.100 to-ports=33333
add action=dst-nat chain=dstnat dst-port=22 in-interface=ether1-ISP1 \
protocol=tcp to-addresses=192.168.25.106 to-ports=22
/ip proxy
set cache-path=web-proxy1 parent-proxy=0.0.0.0
/ip route
add distance=1 gateway=1.1.1.1 routing-mark=ISP1-rt
add distance=1 gateway=2.2.2.1 routing-mark=ISP2-rt
add distance=1 gateway=2.2.2.1,1.1.1.1
/ip service
set telnet disabled=yes
set ssh port=2200
set api disabled=yes
/system clock
set time-zone-name=Europe/Kiev
/system leds
set 0 interface=wlan1
/system ntp client
set enabled=yes primary-ntp=193.192.36.3 secondary-ntp=193.27.209.211
/tool mac-server
set [ find default=yes ] disabled=yes
add interface=ether2-ISP2
add interface=ether3-master-local
add interface=ether4-slave-local
add interface=ether5-slave-local
add interface=wlan1
add interface=bridge-local
/tool mac-server mac-winbox
set [ find default=yes ] disabled=yes
add interface=ether2-ISP2
add interface=ether3-master-local
add interface=ether4-slave-local
add interface=ether5-slave-local
add interface=wlan1
add interface=bridge-local
/tool sniffer
set filter-ip-address=1.1.1.245/32 filter-stream=yes


4. Да ознакомлен.

Помогите пожалуйста решить задачу.
Последний раз редактировалось Oleg78 10 дек 2014, 10:52, всего редактировалось 1 раз.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

то что написано красными буквами в шапке прочитайте...


Есть интересная задача и бюджет? http://mikrotik.site
Oleg78
Сообщения: 7
Зарегистрирован: 02 июн 2014, 15:59

Отредактировал согласно требованиям.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

add action=masquerade chain=srcnat

исходящий интерфейс укажите


Есть интересная задача и бюджет? http://mikrotik.site
Oleg78
Сообщения: 7
Зарегистрирован: 02 июн 2014, 15:59

Я так уже делал. Сейчас повторил для проверки:

Код: Выделить всё

add action=masquerade chain=srcnat out-interface=ether1-ISP1
add action=masquerade chain=srcnat out-interface=ether2-ISP2

Но тогда пробросы перестают работать!!
Еще заметил такую особенность: пока стоит

Код: Выделить всё

add action=masquerade chain=srcnat


я подключаюсь через проброс, потом меняю настройку на

Код: Выделить всё

add action=masquerade chain=srcnat out-interface=ether1-ISP1

и продолжаю спокойно работать по прокинутому порту. Но как только я отключаюсь и сразу пытаюсь повторно подключиться, то уже не работает.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Должны работать

Общая логика правильно настроена

Только вот с этим разберитесь ибо это противоречит здравому смыслу
bridge-local network=192.168.25.0
add address=1.1.1.246/24 interface=ether1-ISP1 network=1.1.1.0


Есть интересная задача и бюджет? http://mikrotik.site
Oleg78
Сообщения: 7
Зарегистрирован: 02 июн 2014, 15:59

Я понимаю что должны работать, но не работают :)
Поэтому и прошу помощи. Давайте искать. Скажите что сюда выложить, лог например.

Не совсем понял что противоречит. Цеплять локальную сетку не на бридж имеете ввиду, а на ether3-master-local ???

IP адреса я подменил просто, вначале 3-мя единицами.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Настраивайте маскарадинг нормально
Далее смотрите причину по которой у вас порт не пробрасывается.

Вполне может быть что на ПК на который вы прокидываете порт просто шлюзом указано другое устройство, а не данный микротик


Есть интересная задача и бюджет? http://mikrotik.site
Oleg78
Сообщения: 7
Зарегистрирован: 02 июн 2014, 15:59

Вы оказались правы.
Поставил другую линукс машину в локалку и на самом деле все работает как я и хотел. Тот линукс на котором я до сих пор тестировал находиться на виртуалке на винде + на компе еще Comodo Internet Security стоит. Я в его фаерволе разрешил все правила но все равно что-то не пропускает даже когда я отключаю фаервол вовсе. Пропускает только когда сорс IP локальный, когда внешний -- нет.
Но это уже не тема этого форума. Буду разбираться.

Спасибо большое за уделённое время.


Ответить