四:NAT功能举例:
实验结构:在外地机房存在一台ROS的有PPTP ×××服务器
实现功能:假定当从本地访问所需资源出现延时过高或者线路不稳定时,通过拨号连接至×××服务后,从×××服务器所在的ISP做中转,同时利用×××服务器的NAT功能对不同的×××授
权用户进行不同的访问限制,同时×××服务器只具备单个网卡接口
本地路由器只需要实现正常共享上网(实现“ROS菜鸟系列1”功能)即可,
外地×××服务器的构建:
实现第一步:先构建×××服务器:
[admin@MikroTik] /interface> print
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE MTU
0 R ether1 ether 1500
[admin@MikroTik] /interface> set 0 name=wan
[admin@MikroTik] > interface print
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE MTU
0 R wan ether 1500
[admin@MikroTik] > ip address add address=211.2.123.42/28 interface=wan
[admin@MikroTik] > ip address print
Flags: X - disabled, I - invalid, D - dynamic
# ADDRESS NETWORK BROADCAST INTERFACE
0 211.2.123.42/28 211.2.123.32 211.2.123.47 wan
[admin@MikroTik] > ip route
[admin@MikroTik] /ip route> add gateway=211.2.123.33
[admin@MikroTik] /ip route> print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC G GATEWAY DISTANCE IN..
0 A S 0.0.0.0/0 r 211.2.123.33 1 wan
1 ADC 211.2.123.32/28 211.2.123.42 0 wan
[admin@MikroTik] > ip pool
[admin@MikroTik] /ip pool> add name=limit ranges=192.168.100.2-192.168.100.254
[admin@MikroTik] /ip pool> add name=nolimit ranges=192.168.200.2-192.168.200.254
[admin@MikroTik] /ip pool> print
# NAME RANGES
0 limit 192.168.100.2-192.168.100.254
1 nolimit 192.168.200.2-192.168.200.254
增加地址池,为不同的授权用户动态分配不同的地址段
[admin@MikroTik] /ppp profile> add name=limitprofiles local-address=192.168.100.1 remote
-address=limit dns-server=61.139.2.69 idle-timeout=00:10:00 rate-limit=512K/512K only-on
e=yes
[admin@MikroTik] /ppp profile> add name=nolimitprofiles local-address=192.168.200.1 remo
te-address=nolimit dns-server=61.139.2.69 idle-timeout=00:10:00 rate-limit=1M/1M only-on
e=yes
[admin@MikroTik] /ppp profile> print
Flags: * - default
0 * name="default" use-compression=default use-vj-compression=default
use-encryption=default only-one=default change-tcp-mss=yes
1 name="limitprofiles" local-address=192.168.100.1 remote-address=limit
idle-timeout=10m use-compression=default use-vj-compression=default
use-encryption=default only-one=yes change-tcp-mss=default rate-limit=512K/512K
dns-server=61.139.2.69
2 name="nolimitprofiles" local-address=192.168.200.1 remote-address=nolimit
idle-timeout=10m use-compression=default use-vj-compression=default
use-encryption=default only-one=yes change-tcp-mss=default rate-limit=1M/1M
dns-server=61.139.2.69
3 * name="default-encryption" use-compression=default use-vj-compression=default
use-encryption=yes only-one=default change-tcp-mss=yes
添加×××用户属性,建立不同的用户类型
[admin@MikroTik] /ppp profile> ..
[admin@MikroTik] /ppp> secret
[admin@MikroTik] /ppp secret> add name=user1 password=user1 profile=limitprofiles service=pptp
[admin@MikroTik] /ppp secret> add name=user2 password=user2 profile=nolimitprofiles service=pptp
[admin@MikroTik] /ppp secret> print
Flags: X - disabled
# NAME SERVICE CALLER-ID PASSWORD PROFILE REMOTE-ADDRESS
0 user1 pptp user1 limitprofiles
1 user2 pptp user2 nolimitpro...
[admin@MikroTik] /interface pptp-server server> set enabled=yes authentication=pap,chap,mschap1,mschap2
[admin@MikroTik] /interface pptp-server server> print
enabled: yes
max-mtu: 1460
max-mru: 1460
mrru: disabled
authentication: pap,chap,mschap1,mschap2
keepalive-timeout: 30
default-profile: default-encryption
[admin@MikroTik] /interface pptp-server server> /
[admin@MikroTik] > ip firewall address-list
[admin@MikroTik] /ip firewall address-list> add list=qq address=202.104.129.251-202.104.129.254
[admin@MikroTik] /ip firewall address-list> add list=qq address=218.18.95.160-218.18.95.227
[admin@MikroTik] /ip firewall address-list> add list=qq address=202.96.170.163-202.96.170.166
[admin@MikroTik] /ip firewall address-list> print
Flags: X - disabled, D - dynamic
# LIST ADDRESS
0 qq 202.104.129.251-202.104.129.254
1 qq 218.18.95.160-218.18.95.227
2 qq 202.96.170.163-202.96.170.166
添加地址列表
[admin@MikroTik] /ip firewall nat> add chain=srcnat src-address=192.168.200.0/24 action=masquerade out-interface=wan
[admin@MikroTik] /ip firewall nat> add chain=srcnat src-address=192.168.100.0/24 dst-address-list=qq action=masquerade out-interface=wan
[admin@MikroTik] /ip firewall nat> print
Flags: X - disabled, I - invalid, D - dynamic
0 chain=srcnat action=masquerade src-address=192.168.200.0/24 out-interface=wan
1 chain=srcnat action=masquerade src-address=192.168.100.0/24 dst-address-list=qq
out-interface=wan
利用NAT分类不同用户类型访问不同资源
以上的例子是所有使用limitprofile用户组的用户,在进行×××拨号授权通过认证后,只能通过×××线路去访问目标地址为QQ列表里面的资源,无法利用×××线路去访问其他的资源,
ROS的操作员可以通过对QQ地址列表里面目标地址的添加和删减,从而实现授权用户对不同目标地址的访问限制。
善用NAT与其他策略的配合使用,可以实现其他的更多功能,如:上下行的数据分流等