vuducdong
Senior Member
Thế thì bạn cần show file cấu hình lên thì mới biết đang sai ở đâu.
Thế thì bạn cần show file cấu hình lên thì mới biết đang sai ở đâu.
Ý bác 192.168.10.100-192.168.10.150 đi qua WG là sao??? từ ngoài vào phải qua WG và 192.168.10.20 ko qua WG??? Còn nữa, 10.20 ko cùng VLAN vs 10.100-10.150???Mấy bác cho mình hỏi. Mình có 1 dải ip từ 192.168.10.100-192.168.10.150 đi qua wireguard với 1 con nas nằm ở ip 192.168.10.20 .Giờ có cách nào để hairpin nat ip ở dãi đi qua wireguard vẫn có thể truy cập đến con nas qua ddns được không nhỉ?
via theNEXTvoz for iPhone
chung 1 vlan bác, dải 100 đến 150 được đánh mangle để thông ra ngoài qua đường vpn còn con nas thì đi qua đường wanÝ bác 192.168.10.100-192.168.10.150 đi qua WG là sao??? từ ngoài vào phải qua WG và 192.168.10.20 ko qua WG??? Còn nữa, 10.20 ko cùng VLAN vs 10.100-10.150???
Phần masquerade em là y như anh nói!Với cấu hình tường lửa đó (cái mặc định, trên trang web bác Tarikin kia cũng post cái tường lửa defconf) thì để truy cập vào giao diện web hoặc SSH hay telnet được vào module SFP GPON hay converter cắm vào cổng ethernet bình thường bác chỉ cần làm các bước:
- Cho cổng sfpX/sfp-sfpplusX/etherX liên quan vào interface list WAN
- Vào IP - Addresses, tạo Entry cho cái interface đó, gắn địa chỉ của cái module GPON hay Converter vào chỗ Network, chọn một địa chỉ cùng dải /24 với cái địa chỉ kia làm địa chỉ của router (mục Address), chẳng cần netmask gì cả.
Thí dụ Module GPON có địa chỉ 192.168.1.10, cắm sfp-sfpplus1 thì em gắn thế này thôi bác:
View attachment 2393387
Sau đó dùng web browser hoặc SSH client vào 192.168.1.10 thôi. Miễn là cái địa chỉ của cái module/converter nó đúng.
Lý do nó hoạt động vì: Thêm cái address thế kia là RouterOS tự động thêm route vào bảng Routes, ghi rõ với địa chỉ đích 192.168.1.10/32 thì dùng interface sfp-sfpplus1 làm gateway đi ra. Sau đó vì dùng tường lửa mặc định và sfp-sfpplus1 nằm trong interface list WAN nên cái rule
Code:/ip firewall nat add action=masquerade chain=srcnat comment="defconf: masquerade" \ ipsec-policy=out,none out-interface-list=WAN
nó tự áp dụng cho cái interface này.
Giả sử LAN của bác 192.168.88.0/24 như mặc định, bác ngồi PC có địa chỉ 192.168.88.15 muốn vào 192.168.1.10 kia. PC bác tạo packet có source address 192.168.88.15, destination address 192.168.1.10 (tạm thời không quan tâm đến port).
PC bác thấy địa chỉ ngoài subnet nên gửi packet này qua gateway là router bác ở 192.168.88.1. Router tìm ra được route là phải đi qua sfp-sfpplus1. Vì interface trong list WAN nên áp dụng rule masquerade: router sửa source address của packet thành địa chỉ của mình trên interface, tức là 192.168.1.2 và nhớ điều này lại.
Packet được forward qua interface sfp-sfpplus1 ra bên ngoài do không bị dính rule drop forward. rule drop này trong firewall defconf chỉ drop nếu in-interface-list thuộc list WAN, mà ở đây in-interface lại là cái bridge LAN.
Module SFP nhận được packet, xử lý và trả lời với packet có source address 192.168.1.10 và destination address là 192.168.1.2. Packet này đến router với in-interface là sfp-sfpplus1 thuộc list WAN. Router nhớ là đã masquerade cái kết nối này, nên sẽ tự động sửa packet, thay địa chỉ destination address từ 192.168.1.2 thành địa chỉ PC gốc 192.168.88.15. Source address vẫn là 192.168.1.10. Từ đó tìm ra là sẽ phải forward packet ra interface bridge LAN.
Packet này đến chain forward của router và mặc dù in-interface là từ WAN, vẫn sẽ được router accept mà không drop vì connection-state của packet này là established nên được rule accept ở đầu chain forward cho qua.
Ở interface bridge thì packet được chuyển đến PC bằng Layer 2 với địa chỉ MAC đích là của PC, địa chỉ MAC nguồn là của router trên bridge. PC nhận được packet với source address 192.168.1.10, destination address 192.168.88.15 phù hợp với cái packet gửi đi trước đó.
Tóm lại là nếu cấu hình của bác đúng như thế thì bác sẽ truy cập được cái module ở cổng SFP bình thường. Nếu không thành công thì có thể do địa chỉ IP của module bị sai. Hoặc bác quên không cho interface vào list WAN. Hoặc bác có thêm hay bớt rules tường lửa nào đó chăng?
Nếu đã chung VLAN thì ko lý do gì trong local bridge dải 100-150 lại ko access đc vào con nas 20 qua IP, nếu qua domain thì chắc bác hairping nat chưa chuẩn rồi.chung 1 vlan bác, dải 100 đến 150 được đánh mangle để thông ra ngoài qua đường vpn còn con nas thì đi qua đường wan
via theNEXTvoz for iPhone
em có tham khảo trên page của bác thuận bùi nói là khi mangle qua vpn thì nó sẽ route theo bảng table khác hay gì đó không chung wan nữa nên hairpin nat mất tác dụngNếu đã chung VLAN thì ko lý do gì trong local bridge dải 100-150 lại ko access đc vào con nas 20 qua IP, nếu qua domain thì chắc bác hairping nat chưa chuẩn rồi.
bác thử scrnat WG IP sang IP của con NAS + mở port cho em nó xem sao.em có tham khảo trên page của bác thuận bùi nói là khi mangle qua vpn thì nó sẽ route theo bảng table khác hay gì đó không chung wan nữa nên hairpin nat mất tác dụng
via theNEXTvoz for iPhone
không được luôn bác ơibác thử scrnat WG IP sang IP của con NAS + mở port cho em nó xem sao.
Phần masquerade em là y như anh nói!
Address của sfp em cũng đã thêm vào!
Còn thiếu bước nào nữa không anh?
Em vẫn chưa access vào sfp ạ!
/interface list member
add interface=sfp-sfpplus1 list=WAN
/interface list export
/ip firewall export
trong bridge mình có chạy 4 cái vlan, nhưng gặp vấn đề hiện tại là trong dải ip đó cứ bật wireguard lên là không vào được nas qua tên miền trong mạng nội bộ. tắt wireguard đi thì vào bình thường
Thím tạo cái routing trên con mik Trang trại như này thử xem:mình đang gặp ca khó khi routing thông 2 WG VPN với nhau. Cụ thể:
1. router ở nhà 192.168.1.0/24, WG#1A 10.0.0.0.1, WG#2A 10.0.10.1
2. router ở trang trại 192.168.2.0/24 (sau firewall), WG#2B 10.0.10.2 client-to-site vs WG#2A
3. router ở văn phòng 192.168.10.0/24 (sau firewall), WG#1B 10.0.0.2 client-to-site vs WG#1A
Tình trạng đã config được hiện nay:
_ từ dải IP local ở nhà có thể access vào local của trang trại cũng như văn phòng và ngược lại
_ từ IP local ở trang trại 192.168.2.0/24 có thể access vào router văn phòng qua IP WG#2B 10.0.10.2
_ từ IP local ở văn phòng 192.168.10.0/24 có thể access vào router trang trại qua IP WG#2B 10.0.0.2
Mong muốn chưa làm đc:
_ từ IP local ở trang trại 192.168.2.0/24 có thể access vào IP local của văn phòng 192.168.10.0/24
Điều kiện:
Vì một số lý do, không thể/không muốn đặt WG VPN #1 vs #2 cùng dải IP
/ip route
add comment="WG STS" disabled=no distance=1 dst-address=192.168.10.0/24 \
gateway=wireguard1 pref-src="" routing-table=main scope=10 \
suppress-hw-offload=no target-scope=30
Bên mangle, tạo 1 prerouting--> accept với dst-add là 192.168.10.20 (đưa lên trên cùng), hoặc tạo list các ip không qua wireguard (ví dụ: adguard home, pi-hole, nas v.v....), rồi sử dụng dst-add-list.
Bạn thử coi sao?
/ip firewall address-list
add address=my.dns.domain list=PUBLIC_IP
Thx U bác, vẫn ko thông.Thím tạo cái routing trên con mik Trang trại như này thử xem:
Code:/ip route add comment="WG STS" disabled=no distance=1 dst-address=192.168.10.0/24 \ gateway=wireguard1 pref-src="" routing-table=main scope=10 \ suppress-hw-offload=no target-scope=30
ah nhầm, của mình làm chiều ngược lại
con wg server thím set IP lần lượt là: 10.0.0.1/24 ; 10.0.10.1/24Thx U bác, vẫn ko thông.
mình đang gặp ca khó khi routing thông 2 WG VPN với nhau. Cụ thể:
1. router ở nhà 192.168.1.0/24, WG#1A 10.0.0.0.1, WG#2A 10.0.10.1
2. router ở trang trại 192.168.2.0/24 (sau firewall), WG#2B 10.0.10.2 client-to-site vs WG#2A
3. router ở văn phòng 192.168.10.0/24 (sau firewall), WG#1B 10.0.0.2 client-to-site vs WG#1A
Tình trạng đã config được hiện nay:
_ từ dải IP local ở nhà có thể access vào local của trang trại cũng như văn phòng và ngược lại
_ từ IP local ở trang trại 192.168.2.0/24 có thể access vào router văn phòng qua IP WG#2B 10.0.10.2
_ từ IP local ở văn phòng 192.168.10.0/24 có thể access vào router trang trại qua IP WG#2B 10.0.0.2
Mong muốn chưa làm đc:
_ từ IP local ở trang trại 192.168.2.0/24 có thể access vào IP local của văn phòng 192.168.10.0/24
Điều kiện:
Vì một số lý do, không thể/không muốn đặt WG VPN #1 vs #2 cùng dải IP
DoneBác thử thế này ạ:
* Trên router của trang trại. Thêm route 192.168.10.0/24 cho mặc định đi qua interface wireguard như bác @maihuong1990 post ở trên.
Done. Allowed IP = 0.0.0.0/0* Vẫn trên router trang trại bác chuyển sang tab Peers edit cái peer ứng với con router ở nhà, mục Allowed Address, bác THÊM 192.168.10.0/24 vào danh sách sẵn có nếu danh sách không phải là 0.0.0.0/0. Nếu là 0.0.0.0/0 thì không cần thêm gì.
Done* Ở router nhà, vì bác nói từ lan nhà 192.168.1.0/24 có thể vào 192.168.2.0/24 lẫn 192.168.10.0/24 rồi nên em assume là ở đây đã cấu hình đúng rồi. Nếu cần bác check xem ở router nhà này đã có route mặc định 192.168.2.0/24 đi qua gateway WG#2A chưa, và route mặc định 192.168.10.0/24 đi qua gateway WG#1A chưa. Nếu chưa thì bác add. Ngoài ra ở WG peer tương ứng với trang trại thì có 192.168.2.0/24 trong danh sách Allowed Address. Và ở Peer ứng với office có 192.168.10.0/24 trong danh sách Allowed Address.
Done.* Ở router nhà, bác phải đảm bảo không có rule nào ở chain forward block traffic giữa 2 dải 192.168.2.0/24 và 192.168.10.0/24. Để chắc ăn add chúng vào cùng 1 address list rồi thêm rule accept forward với dst-address-list là cái list này.
Thx U bác. đã làm đc. Lỗi tại mình list thiếu IP trong mỗi group nên routing ko thông.Tiếp theo post ở trên cho bác @wuhoatu
Cái chính mà bác cần là làm sao để khi các thiết bị ở trang trại muốn gửi packet đi 192.168.10.0/24 thì router biết phải gửi chúng qua interface wireguard. Chỗ này cần cái entry với distance=1 trong bảng route kia. Đi qua wireguard đến router nhà thì packet có source thuộc 192.168.2.0/24 và destination thuộc 192.168.10.0/24 này phải được wireguard ở nhà chấp thuận, vì thế Allowed Address của peer ứng với farm phải có 192.168.2.0/24 trong list.
Sau đó router nhà phải biết với destination 192.168.10.0/24 thì lái packet này qua interface wireguard đi office, nên router nhà phải có entry trong bảng route cho 192.168.10.0/24 đi interface đó tương ứng.
Không được phép có rule masquerade hay dstnat với srcnat nào tác động lên packet này bác nhé, cần giữ nguyên địa chỉ nguồn và đích, bác chú ý nó không bị dính vào rule nào trong bảng NAT.
Packet được chuyển qua wireguard đến office. Ở đây wireguard nhận được packet có source address thuộc 192.168.2.0/24 nên peer ở router tại office này phải có trong allowed address 192.168.2.0/24.
Thiết bị trong 192.168.10.0/24 tại office nhận được packet, xử lý và gửi packet trả lời. Packet trả lời có source address thuộc 192.168.10.0/24, destination address thuộc 192.168.2.0/24. Quá trình chạy ngược lại cho tới farm này tương tự như trên và cần các Allowed Address cũng như route chấp nhận được các giá trị trong source và destination address, tương tự như em viết ở trên.
Tức là khi packet đến router nhà thì trong Allowed Address của peer ứng với office phải có 192.168.10.0/24. Sau đó trong bảng route phải có entry 192.168.2.0/24 đi qua wireguard đi farm. Tường lửa không được block forwarding giữa 2 dải.
Sau đó packet đến Farm thì trong Allowed Address của peer ứng với home trên router farm cũng phải có 192.168.10.0/24.