簡單的 ACL 不起作用
網路:Cisco 2921。兩個子網。192.168.1.0/24 和 2.0/24。
由於某種原因,我無法進行子網間通信。
我將帶有以下語句的 ACL 綁定到每個子網的入站介面。
在 Gi0/0 (1.0/24) 上,我將“access-list 101 permit ip 192.168.2.0 0.0.0.255 any”應用於入站介面。
在 Gi0/1 (2.0/24) 上,我將“access-list 102 permit ip 192.168.1.0 0.0.0.255 any”應用於入站介面。
當我這樣做時,DHCP 停止工作,有時網際網路也停止工作,所以我刪除了它們。
我在數據包跟踪器中做了這個,它工作了 100%。為什麼它在真正的路由器上不起作用?
執行配置:
Current configuration : 2608 bytes ! ! Last configuration change at 15:22:51 UTC Mon Feb 18 2013 ! NVRAM config last updated at 17:41:03 UTC Sun Feb 17 2013 ! NVRAM config last updated at 17:41:03 UTC Sun Feb 17 2013 version 15.1 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname R1 ! boot-start-marker boot-end-marker ! ! enable secret 5 xxxxxx enable password xxxxxx ! no aaa new-model ! no ipv6 cef ip source-route ip cef ! ! ! ip dhcp excluded-address 192.168.2.1 ip dhcp excluded-address 192.168.2.1 192.168.2.99 ip dhcp excluded-address 192.168.2.1 192.168.2.50 ! ip dhcp pool DHCP_POOL network 192.168.2.0 255.255.255.0 default-router 192.168.2.1 dns-server 8.8.8.8 domain-name subnet2.local ! ! ip name-server 8.8.8.8 ip name-server 8.8.4.4 multilink bundle-name authenticated ! ! ! ! ! crypto pki token default removal timeout 0 ! ! voice-card 0 ! ! ! ! ! ! ! license udi pid CISCO2921/K9 sn FTX1703AHBN hw-module pvdm 0/0 ! ! ! ! redundancy ! ! ip ftp username xxxxxxx ip ftp password xxxxx ! ! ! ! interface Embedded-Service-Engine0/0 no ip address shutdown ! interface GigabitEthernet0/0 ip address 192.168.1.1 255.255.255.0 ip access-group 5 out ip nat inside ip virtual-reassembly in duplex auto speed auto no mop enabled ! interface GigabitEthernet0/1 ip address 192.168.2.1 255.255.255.0 ip nat inside ip virtual-reassembly in duplex auto speed auto ! interface GigabitEthernet0/2 ip address xxxxxxxxxxx 255.255.255.248 ip nat outside ip virtual-reassembly in duplex auto speed auto ! ip forward-protocol nd ! no ip http server no ip http secure-server ! ip nat inside source list 1 interface GigabitEthernet0/2 overload ip nat inside source list 2 interface GigabitEthernet0/2 overload ip route 0.0.0.0 0.0.0.0 108.162.28.169 ip route 192.168.1.0 255.255.255.0 GigabitEthernet0/0 ip route 192.168.2.0 255.255.255.0 GigabitEthernet0/1 ! access-list 1 permit 192.168.1.0 0.0.0.255 access-list 2 permit 192.168.2.0 0.0.0.255 access-list 3 permit 192.168.2.0 0.0.0.255 access-list 3 permit 192.168.1.0 0.0.0.255 access-list 4 permit 192.168.1.0 0.0.0.255 access-list 5 permit any access-list 101 permit ip 192.168.2.0 0.0.0.255 any ! ! ! control-plane ! ! ! ! mgcp profile default ! ! ! ! ! gatekeeper shutdown ! ! ! line con 0 line aux 0 line 2 no activation-character no exec transport preferred none transport input all transport output pad telnet rlogin lapb-ta mop udptn v120 ssh stopbits 1 line vty 0 4 password ******** login transport input all ! scheduler allocate 20000 1000 end
我相信您在 ACL 中混合了入站和出站的概念。
如果介面 GigabitEthernet0/0 後面有 192.168.1.0/24 子網,那麼要允許該流量通過另一個介面,您將在 GigabitEthernet0/0 上添加以下 ACL,反之亦然。
訪問列表 101 允許 ip 192.168.1.0 0.0.0.255 任何
訪問列表 102 允許 ip 192.168.2.0 0.0.0.255 任何
通過限制流量可以去的地方,可以實現同樣的事情(並且會更安全)。
訪問列表 101 允許 ip 任何 192.168.2.0 0.0.0.255
訪問列表 102 允許 ip 任何 192.168.1.0 0.0.0.255
如果您使用上述 ACL,那麼兩個介面後面的兩個網路將只能相互通信……就是這樣。
然後在 GigabitEthernet0/0 配置中:
ip 訪問組 101 在
在 GigabitEthernet0/1 上:
ip 訪問組 102 在
入站和出站始終基於數據包首先到達的介面。
為了更好地理解處理 ACL 和入站/出站問題時,假設您是路由器和/或防火牆。
您(路由器)是否允許在您的介面 Gi0/0 上使用 IP 192.168.1.10 的數據包向您發送數據?
是的,我願意,該介面上的 ACL 允許這樣做;
訪問列表 101 允許 ip 192.168.1.0 0.0.0.255 任何
或者
訪問列表 101 允許 ip 任何 192.168.2.0 0.0.0.255
如果您將 ACL 設置為出站,那麼問題是;
您是否允許來自 192.168.1.10 的數據包離開您的介面 Gi0/0?
一旦允許該流量,當它們都在同一設備上時,您不需要在目標介面上添加 ACL。