¹ÌÅ©·Îƽ 2WAN »ç¿ëÈıâ

´À³¦   
   Á¶È¸ 14991   Ãßõ 0    

미크로틱  CCR1009-7G-1C-1S+  몇일 동안 삽질하고 고수님들에게 몇가지 질문을 하고자 글을 남겨 봅니다.

두가지 셋팅을 해봤는데요. 


1. 여기 2cpu의 강좌에 있는 내용입니다.

     http://2cpu.co.kr/lec/1136?&sfl=mb_id%2C1&stx=mikrotik

2. 인터넷 동영상에 나오는걸 따라 해봤습니다.

     https://www.youtube.com/watch?v=AZePBBbp_5w&t=300s


네트워크 구성은 이렇습니다.

ISP -( WAN1  1.1.10.5,  WAN2 1.1.20.4) - 미크로틱(192.168.1.1/24)  -  스위치 (192.168.1.2/24) - PC / Note book / NAS / Servers
                                                                                                                         - Hap AC(192.168.1.245/24)  

미크로틱 ether1 = WAN1, ether2 = WAN2,  LAN 구성은 브리지로 ether5과 ether6번을 묶었습니다.

===============================================================================================

1번 세팅

/interface bridge
add name=lan

/interface bridge port
add bridge=lan interface=ether5
add bridge=lan interface=ether6

/ip pool
add name=dhcp ranges=192.168.1.2-192.168.1.254  

/ip dhcp-server
add address-pool=dhcp disabled=no interface=lan lease-time=3d name=dhcp  

/ip address
add address=192.168.1.1/24 interface=lan

/ip dhcp-client
add add-default-route=no disabled=no interface=ether1 use-peer-dns=no use-peer-ntp=no
add add-default-route=no disabled=no interface=ether2 use-peer-dns=no use-peer-ntp=no

/ip dhcp-server network
add address=192.168.1.0/24 dns-server=168.126.63.1,168.126.63.2 gateway=192.168.1.1 netmask=24

/ip firewall mangle      
add action=mark-connection chain=input in-interface=ether1 new-connection-mark=ether1_conn
add action=mark-connection chain=input in-interface=ether2 new-connection-mark=ether2_conn
add action=mark-routing chain=output connection-mark=ether1_conn new-routing-mark=to_ether1
add action=mark-routing chain=output connection-mark=ether2_conn new-routing-mark=to_ether2
add action=mark-connection chain=prerouting dst-address-type=!local new-connection-mark=ether1_conn per-connection-classifier=src-address:2/0 src-address=192.168.1.2-192.168.1.254
add action=mark-connection chain=prerouting dst-address-type=!local new-connection-mark=ether2_conn per-connection-classifier=src-address:2/1 src-address=192.168.1.2-192.168.1.254
add action=mark-routing chain=prerouting connection-mark=ether1_conn new-routing-mark=to_ether1 src-address=192.168.1.2-192.168.1.254
add action=mark-routing chain=prerouting connection-mark=ether2_conn new-routing-mark=to_ether2 src-address=192.168.1.2-192.168.1.254

/ip firewall nat
add action=masquerade chain=srcnat src-address=192.168.1.2-192.168.1.254  
add action=masquerade chain=srcnat out-interface=ether1  
add action=masquerade chain=srcnat out-interface=ether2

/ip route
add check-gateway=ping distance=1 gateway=1.1.10.1%ether1 routing-mark=to_ether1 scope=255  
add check-gateway=ping distance=1 gateway=1.1.20.1%ether2 routing-mark=to_ether2 scope=255


2번 세팅

/interface bridge
add name=lan

/interface bridge port
add bridge=lan interface=ether6
add bridge=lan interface=ether5

/ip dhcp-client
add add-default-route=no dhcp-options=hostname,clientid disabled=no interface=ether1 use-peer-dns=no use-peer-ntp=no
add add-default-route=no dhcp-options=hostname,clientid disabled=no interface=ether2 use-peer-dns=no use-peer-ntp=no


/ip address
add address=192.168.1.1/24 interface=lan network=192.168.1.0

/ip firewall magle
add action=mark-connection chain=prerouting connection-state=new new-connection-mark=WAN1 nth=2,1 passthrough=yes src-address=192.168.1.0/24
add action=mark-connection chain=prerouting connection-state=new new-connection-mark=WAN2 nth=2,2 passthrough=yes src-address=192.168.1.0/24
add action=mark-routing chain=prerouting connection-mark=WAN1 new-routing-mark=WAN1 passthrough=yes src-address=192.168.1.0/24
add action=mark-routing chain=prerouting connection-mark=WAN2 new-routing-mark=WAN2 passthrough=yes src-address=192.168.1.0/24

/ip route
add distance=1 gateway=1.1.10.1 routing-mark=WAN1  
add distance=1 gateway=1.1.20.1 routing-mark=WAN2
add distance=1 gateway=1.1.10.1
add distance=2 gateway=1.1.20.1

/ip dns
set allow-remote-requests=yes servers=168.126.63.1,168.126.63.2

/ip pool
add name=dhcp ranges=192.168.1.2-192.168.1.254

/ip dhcp-server
add address-pool=dhcp disabled=no interface=lan name=dhcp

/ip dhcp-server network
add address=192.168.1.0/24 dns-server=168.126.63.1,168.126.63.2 gateway=192.168.1.1 netmask=24

/ip firewall nat
add action=masquerade chain=srcnat src-address=192.168.1.0/24


라우팅 테이블 비교

1번세팅과 2번 세팅을 각각 하고서 라우팅 테이블 입니다.

 (1번 세팅)


  (2번 세팅)


특이한게 2번 세팅에선 Routing Mark가 없는 1.1.20.1 게이트웨이가 언액티브 상태더군요. 이게 위에 1.1.10.1 게이트웨이를 disable시키면 

1.1.20.1게이트웨이 라우팅 테이블이 액티브 상태로 바뀌더군요. 잘은 모르겠지만 추측으로 하나가 죽으면 자동으로 액티브 상태가 바뀌는게 아닌가 합니다.




파일 다운로드

그다음은 파일을 다운로드 해봤습니다. 다운로드 하는 중에 winbox 설정을 바꾸어서 측정 해봤습니다.

(1번 세팅)



 (2번 세팅)


1번세팅에서는 거의 ether1에서만 다운로드 됩니다. 2번 세팅에서는 WAN1(ether1)과 WAN2(ether2) 속도는 차이가 있지만 둘다 다운로드가 됩니다.

그러나 Total 속도를 비교해보면 차이가 없내요 ㅋㅋㅋ 

2번 세팅에서 뭔가 로드밸런싱 하게 나오는거 같지만  2번세팅에서 다운로드 속도를 합하면 1번세팅이랑 비슷합니다.


클라이언트의  IP 주소 할당

1번세팅에서는 전부 ether1에서 받은 public IP 만 받아 옵니다.

2번세팅에서는 클라이언트 마다 public IP가(ether1와 ether2 의 IP) 다르게 나옵니다. 


==========================================================================================================

firewall의 filter설정과 NAT설정은 아직 해보지 않았지만 일단 여기까지 해보고 정리차원에서 글을 올려 봅니다.
여기서 NAT설정에서 IP 2개를 서버들에게 다르게 IP 주소를 NAT 할 수 있을거 같기도 합니다만 먼가 가물가물 하내요.

여기서 고수님들에게 질문이 있습니다.


질문1 

1번 세팅과 2번 세팅에서 다른게 magle rule과 ip route 설정만 다른데 어떻게 차이가 있는지 궁금합니다.


질문2

지금은  웹서버의 포트 포워딩을 아래와 같이 했습니다.

add action=masquerade chain=srcnat dst-address=192.168.1.10 dst-port=443 out-interface=lan protocol=tcp src-address=192.168.1.0/24
add action=masquerade chain=srcnat dst-address=192.168.1.10 dst-port=80 out-interface=lan protocol=tcp src-address=192.168.1.0/24
add action=dst-nat chain=dstnat dst-address=10.1.10.4 dst-port=443 protocol=tcp  to-addresses=192.168.1.10 to-ports=443
add action=dst-nat chain=dstnat dst-address=10.1.10.4 dst-port=80 protocol=tcp  to-addresses=192.168.1.10 to-ports=80

웹서버가 다음과 같이 2개가 있다고 하면  --> 192.168.1.10 (웹서버1), 192.168.1.11(웹서버2)

어떻게 하면 public IP 2개를 다르게 NAT 시켜 주면 될까요?

조금 긴 글이라  끝까지 읽으시기 귀찮으실텐데 감사합니다. ^^


´À³¦ 2017-12
Å×½ºÆ® ³»¿ë Ãß°¡ ÇÕ´Ï´Ù.
NAT ¼³Á¤À»
add action=masquerade chain=srcnat src-address=192.168.1.0/24
add action=masquerade chain=srcnat dst-address=192.168.1.28 dst-port=443 out-interface=lan protocol=tcp src-address=192.168.1.0/24
add action=masquerade chain=srcnat dst-address=192.168.1.28 dst-port=80 out-interface=lan protocol=tcp src-address=192.168.1.0/24
add action=dst-nat chain=dstnat dst-address=x.x.x.x  dst-port=443 protocol=tcp to-addresses=192.168.1.28 to-ports=443
add action=dst-nat chain=dstnat dst-address=x.x.x.x  dst-port=80 protocol=tcp to-addresses=192.168.1.28 to-ports=80

¿ÜºÎ¿¡¼­ À¥¼­¹ö¿¡ Á¢¼Ó½Ã  x.x.x.x ÁÖ¼Ò¿¡ ether1, ether2¿¡¼­  DHCP Client·Î ¹ÞÀº ÁÖ¼Ò´Â µÑ ´Ù Á¢¼ÓÀÌ °¡´ÉÇϳ»¿ä.
¹®Á¦´Â Hair PinÀÎÁö ¹ºÁö ÇÏ´Â ¼³Á¤Àº  ³»ºÎ¿¡¼­´Â public ip·Î´Â Á¢¼ÓÀÌ ¾ÈµÇ³»¿ä. ±âÁ¸¿¡ »ç¿ëÇÏ´ø 1 WAN»óÅ¿¡¼­´Â  ³»ºÎ¿¡¼­µµ  Public IP·Îµµ Á¢¼ÓÀÌ µÇ¾ú¾ú´Âµ¥¿ä
¹ÌÅ©·ÎƽÀ» »ç¿ëÇÏÁø ¾ÊÁö¸¸, ¹ÌÅ©·Îƽ ¶ÇÇÑ iptablesÀ» Ä¿½ºÅÒÇÏ¿© ÀåÄ¡ÀÇ Á¤Ã¥À» Àû¿ëÇϴ°ɷΠ¾Ë°íÀÖ½À´Ï´Ù.

1¹ø°ú 2¹øÀº È®ÀÎÇϽŰÍó·³ ÀåÄ¡¿¡ Àû¿ëµÈ ±ÔÄ¢Àº »õ·Î¿î Ä¿³Ø¼Ç¿¡ ´ëÇÑ ¶ó¿îµå ·ÎºóÀÇ Àû¿ë À¯¹«ÀÇ Â÷ÀÔ´Ï´Ù.
1¹øÀÇ °æ¿ì ether1·Î µé¾î¿Â Ä¿³Ø¼ÇÀº MARK Ÿ°Ù°ú mark ¸ÅÄ¡¸¦ ÀÌ¿ëÇؼ­ ether1_conn·Î ÁöÁ¤ÇÏ°í ether2´Â ether2_connÀ» Ä¿³Ø¼Ç¿¡ ºÎ¿©ÇÕ´Ï´Ù.
±×¸®°í markº°·Î ´Ù½Ã µé¾î¿Ô´ø ÀÎÅÍÆäÀ̽º·Î OUT Çϵµ·Ï ó¸®ÇÏ´Â ¹Ý¸é, 2¹ø ¼³Á¤Àº °¢°¢ÀÇ »õ·Î¿î Ä¿³Ø¼Çº°·Î nth ¸ÅÄ¡¸¦ ÀÌ¿ëÇؼ­ ¶ó¿îµå ·ÎºóÀ» ¼öÇàÇÕ´Ï´Ù.

°£´ÜÇÏ°Ô Ã¹ ¹ø° Ä¿³Ø¼ÇÀº WAN1·Î µÎ ¹ø° Ä¿³Ø¼ÇÀº WAN2·Î ó¸®ÇÕ´Ï´Ù. ¶ÇÇÑ  connection-state=new¸¦ ºÎ¿©ÇÏ°Ô µÇ´Âµ¥ »óÅ°ªÀÌ ÁÖ¾îÁöÁö ¾ÊÀ» °æ¿ì ´ÜÆíµÈÆÐŶÀÌ °è¼ÓÇؼ­ ¶ó¿îµå ·ÎºóÀ¸·Î ó¸®µÇ°Ô ¶§¹®¿¡ new »óŸ¦ ÁÖ¾î ÃÖ¼Ò ÇÑ°³ÀÇ Ä¿³Ø¼ÇÀº µ¿ÀÏÇÑ °æ·Î¸¦ À¯ÁöÇϵµ·Ï ÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ ÀÌÀ¯ µîÀ¸·Î 1¹øÀº WAN1À» ÅëÇؼ­ ¿¬°áÀÌ ÀÌ·ç¾îÁö±â ¶§¹®¿¡ ´ÜÀÏ ¸µÅ©¿¡¼­¸¸ ¼º´ÉÀÌ ÃøÁ¤µÇ¾ú°í 2¹ø ¼³Á¤Àº µÎ °³ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇؼ­ ÃøÁ¤µÈ°É·Î º¸ÀÔ´Ï´Ù.

¸¶Å©°¡ ÁöÁ¤µÇÁö ¾ÊÀº °ÔÀÌÆ®¿þÀÌ ¾×Ƽºê/µð½º¿¡À̺íÀÇ °æ¿ì ¶ó¿ìÆÃÀÌ ¸¶Å©·Î ÁöÁ¤µÈ °æ¿ì¿¡ ´ëÇؼ­¸¸ 󸮵DZ⠶§¹®¿¡ À̸¦ º¸¿ÏÇÏ°íÀÚ Àýü ¹æ½ÄÀ¸·Î Àû¿ëÇÑ°Í °°½À´Ï´Ù. ù ¹ø° new Ä¿³Ø¼ÇÀÌ ±ÔÄ¢¿¡ µû¶ó WAN1·Î ¸¶Å©°¡ µÇ¾ú´Ù¸é WAN1ÀÎÅÍÆäÀ̽º·Î ³ª°¥¼öÀÖ´Â ¸¶Å©´Â WAN1(MARK)ÀÎ °æ¿ì¸¸ °¡´ÉÇÏ°í WAN2´Â WAN2¸¶Å©¿¡ ´ëÇؼ­¸¸ °¡´ÉÇÕ´Ï´Ù. ÇÏÁö¸¸ ȸ¼±ÀÇ ¹®Á¦ µîÀ¸·Î WAN2·ÎÀÇ ¿¬°á¸¸ °¡´ÉÇÏ´Ù¸é WAN1¸¶Å©´Â ¶ó¿ìÆà µÉ ¼ö ¾ø±â ¶§¹®¿¡ ¶ó¿ìÆà µÉ ¼ö ÀÖµµ·Ï ¸¶Å©°¡ ÁöÁ¤µÇÁö ¾ÊÀº °ÔÀÌÆ®¿þÀ̸¦ Ãß°¡ÇÑ°Í°°Àºµ¥ ¾îÂ÷ÇÇ ³»ºÎ ÁÖ¼Ò ¸ðµÎ¿¡ ´ëÇؼ­ ¸¶Å·À» ó¸®ÇÏ¿´°í ÇÑ°³ÀÇ È¸¼±ÀÌ ÀýüµÇ¸é ³ª¸ÓÁö ´ÜÀÏ È¸¼±¸¸ ÀÛµ¿Çϱ⠶§¹®¿¡ ±»ÀÌ distance¸¦ 1°ú 2·Î ±¸ºÐÇÒ ÇÊ¿ä°¡ ÀÖ´ÂÁö´Â ¸ð¸£°Ú³×¿ä

2¹øÀº 1¹ø ¼³Á¤¿¡¼­ ¿¬ÀåÀ»Çؼ­ Àû¿ëÇÏ¿©¾ß ÇÒ°ÍÀ¸·Î º¸ÀÔ´Ï´Ù.

iptables ±âÁØÀ̶ó¸é °¢°¢ µé¾î¿Â ÀÎÅÍÆäÀ̽º º°·Î mark¸¦ ÁöÁ¤ÇÏ°í ¸ñÀûÁö ÁÖ¼Ò ´ë½Å mark1À̶ó¸é ¼­¹ö1·Î DNAT, mark2¶ó¸é ¼­¹ö2·Î DNAT ¼³Á¤ÇÕ´Ï´Ù.
ÀÌ¹Ì WAN1·Î µé¾î¿Â ÆÐŶÀ̶ó¸é ether1¿¡ ÁöÁ¤µÈ IP·Î µé¾î¿Â°ÍÀ¸·Î °£ÁֵDZ⠶§¹®¿¡ ¸ñÀûÁö¸¦ ÁöÁ¤Çϴ°Ͱú µ¿ÀÏÇÑ È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù.
±×¸®°í ´Ù½Ã µé¾î¿Â ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ Å¬¶óÀ̾ðÆ®·Î ¹ÝȯµÇ¾î¾ß Çϱ⠶§¹®¿¡ mark1Àº WAN1À¸·Î ¶ó¿ìÆÃ, mark2´Â WAN2·Î ¶ó¿ìÆÃ(¶Ç´Â ÀÎÅÍÆäÀ̽º·Îµµ ÁöÁ¤°¡´É)À¸·Î ±¸ÇöÀÌ °¡´ÉÇϳª ¹ÌÅ©·ÎƽÀ» »ç¿ëÇÏÁö ¾Ê¾Ò°í ¼¼ºÎÀûÀÎ ¼³Á¤Àº ´Ù¸¦¼ö Àֱ⠶§¹®¿¡ »ç¿ëÇϽô °í¼öºÐÀÇ ´äº¯À».....
     
´À³¦ 2017-12
¸»¾¸ÇϽŴë·Î 1¹ø ¼³Á¤¿¡¼­ ¿¬ÀåÇؼ­ 2¹ø ¼³Á¤À» Àû¿ëÇغýÀ´Ï´Ù. ¹°·Ð ±¸±Û ½Å°øÀ¸·Î Çß½À´Ï´Ù.(¼ÖÁ÷È÷ ¾Æ·¡ÀÇ ³»¿ëÀÌ Á¤È®È÷ ¹«½¼ ¶æÀÎÁö ¸ð¸¨´Ï´Ù ±×³É ¾î·ÅDzÀÌ ÀÌ·±°Å Á¤µµ³»¿ä)

/ip firewall mangle
add action=accept chain=prerouting dst-address=1.1.10.0/24 in-interface=lan
add action=accept chain=prerouting dst-address=1.1.20.0/24 in-interface=lan
add action=mark-connection chain=prerouting connection-mark=no-mark in-interface=ether1 new-connection-mark=WAN1_conn passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark in-interface=ether2 new-connection-mark=WAN2_conn passthrough=yes
add action=mark-connection chain=prerouting connection-state=new new-connection-mark=WAN1_conn nth=2,1 passthrough=yes src-address=192.168.1.0/24
add action=mark-connection chain=prerouting connection-state=new new-connection-mark=WAN2_conn nth=2,2 passthrough=yes src-address=192.168.1.0/24
add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-type=!local in-interface=lan new-connection-mark=WAN1_conn passthrough=yes \
    per-connection-classifier=both-addresses:2/0
add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-type=!local in-interface=lan new-connection-mark=WAN2_conn passthrough=yes \
    per-connection-classifier=both-addresses:2/1
add action=mark-routing chain=prerouting connection-mark=WAN1_conn new-routing-mark=to_WAN1 passthrough=yes src-address=192.168.1.0/24
add action=mark-routing chain=prerouting connection-mark=WAN2_conn new-routing-mark=to_WAN2 passthrough=yes src-address=192.168.1.0/24
add action=mark-routing chain=prerouting connection-mark=WAN1_conn in-interface=lan new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=WAN2_conn in-interface=lan new-routing-mark=to_WAN2 passthrough=yes
add action=mark-routing chain=output connection-mark=WAN1_conn new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=output connection-mark=WAN2_conn new-routing-mark=to_WAN2 passthrough=yes

/ip route
add check-gateway=ping distance=1 gateway=1.1.10.1 routing-mark=to_WAN1
add check-gateway=ping distance=1 gateway=1.1.20.1 routing-mark=to_WAN2
add check-gateway=ping distance=1 gateway=1.1.10.1
add check-gateway=ping distance=1 gateway=1.1.20.1

/ip firewall nat
add action=masquerade chain=srcnat out-interface=ether1 
add action=masquerade chain=srcnat out-interface=ether2

ÀÏ´Ü Àß µË´Ï´Ù. ´Ù¿î·Îµå Áß¿¡ ȸ¼± Çϳª¸¦ Á׿©µµ ³ª¸ÓÁö ÇϳªÀÇ È¸¼±À¸·Î Àß µÇ³»¿ä..

¼öÁ¤Çß½À´Ï´Ù. Hairpin NATµµ Àߵdz»¿ä. ¤»
Äà ÀúÀÇ ±¸´Ú´Ù¸® °­Á¸¦ º¸½Ã°í..¤¾¤¾
¹¹ Áö±ÝÀ̶ó°í º°·Î ´Þ¶óÁø°Ç ¾ø½À´Ï´Ù¸¸..


Á¦¸ñPage 76/105
2023-02   11590   ±èÈ¿¼ö
2023-06   14191   °õ»ïÃÌ
2016-11   9488   °õ»ïÃÌ
2017-08   18210   ÇÏÀÌÇÏÀÌ
2020-02   4584   ½½±â·Î¿î»ýÈ°
2020-04   3778   RIGIDBODY
2020-11   3089   redqqqq
2022-08   4566   YJMODx¿µÀ硦
2023-04   12686   ÁÒ½´¾Æ
2014-10   11963   ¸ð¾Æ·¹±èÈ£¿­
2016-04   6927   Çϴùٶó±â
2017-12   14992   ´À³¦
2018-08   10752   »ì±¸
2019-04   6997   Malice
2019-06   8462   È÷¿õ
2019-12   10007   witbox
2020-12   4551   redqqqq
2021-02   4269   °¡ºñÀǸ®
2021-07   3200   ±×¸°1052
06-26   4712   ¹Ú¹®Çü