Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Thac mac ve Wildcard mask

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Re: Xin chỉ cách tính WILDCARD!

    Hi, apology nói đúng đó!
    Mình có một số ý muốn trình bày như sau:

    1- Ví dụ để filter mạng 192.168.4.0 đến 192.168.9.0 như bài viết http://vnpro.org/forum/viewtopic.php?t=1383 thì cách tính wildcard là:
    192.168.4.0 -> 192.168.00000100.0
    192.168.5.0 -> 192.168.00000101.0
    192.168.6.0 -> 192.168.00000110.0
    192.168.7.0 -> 192.168.00000111.0
    192.168.8.0 -> 192.168.00001000.0
    192.168.9.0 -> 192.168.00001001.0

    Đối với mạng 4.0-7.0 thì 2 bit cuối thay đổi nên sẽ no match nên mang giá trị wildcard là 0.0.00000011.11111111 -> 0.0.3.255
    Vậy Wildcard cho 192.168.4.0 -7.0 là 0.0.3.255

    Đối với mạng 8.0-9.0 thì 1 bit cuối thay đổi nên sẽ no match nên mang giá trị wildcard là 0.0.00000001.11111111 -> 0.0.1.255
    Vậy wildcard cho 192.168.8.0-9.0 là 0.0.1.255

    2- Cách tính one-line-filter như bài viết http://www.vnpro.org/forum/viewtopic.php?t=1102 chỉ có hiệu quả đối với các mạng rời rạc.
    Ví dụ như bài trên thì sẽ ra wildcard là 0.0.13.255 tức là sẽ lọc các mạng có dạng 192.168.0000xx0x.0.
    Cụ thể là chỉ filter các mạng 192.168.0.0, 1.0, 4.0, 5.0, 8.0, 9.0, 12.0, 13.0 nên cũng không thoả yêu cầu.

    3- Cách tính như theo Boson của BlackMoon, hay Sybex của yuna là lấy giá trị cuối trừ giá trị đầu: 9-4=5 -> wildcard là 0.0.5.255 cũng không thoả yêu cầu.


    Trở lại bài toán ban đầu:

    Xin các bạn chỉ cách tính WILDCARD, có chương trình nào tính được như vậy không?
    Xin hỏi WILDCARD của 192.168.1.19 đến 192.168.1.99 là bao nhiêu?
    Liệu có thực hiện được thêm 1 số yêu cầu như sau hay không:

    1. Permit các host có IP chẵn
    2. Deny các host có IP lẻ
    3. Permit host có IP chia hết cho 4
    4. Permit host có IP chia hết cho 4 nhưng không chia hết cho 8
    5. Deny host có IP chia hết cho 4 nhưng không chia hết cho 8
    ...

    Dĩ bất biến ứng vạn biến!
    Mời mọi người đóng góp ý kiến,
    Cheers,

    Comment


    • #17
      Bạn xem thử thread này http://www.vnpro.org/forum/viewtopic.php?t=1803

      Comment


      • #18
        Bạn có thể, có thể thôi, xem thêm ở đây nhé!


        --------
        Chúc mọi người vui vẻ!
        BlackMoon
        Đưa người ta không đưa qua sông
        Sao có tiếng sóng ở trong lòng
        Bóng chiều không thắm không vàng vọt
        Sao đầy hoàng hôn trong mắt trong.

        Comment


        • #19
          Re: WildCard?

          Hi,
          Mình xin lưu ý các bạn, khi cần tính wildcard cho một range, các bạn có thể trừ như itmanvn. Sau đó kiểm tra lại kết quả.
          Nếu tất cả các octet khác không, bằng 2 mũ x trừ 1 thì mới đúng. (VD: 1,3,7,15,31,63....)
          Trong VD của bạn itmanvn kết quả 0.0.5.255 là sai rồi (Octet thứ 3 vi phạm điều kiện nêu trên).
          Trong các bài tính wildcard, đôi khi đề bài đánh lừa như VD này đấy!!! :o
          Thân chào :idea:

          Comment


          • #20
            Re: Anh Minh và các ban vui lòng chỉ mình cách tính Wild Card !

            Mình nghĩ là bạn nên xem cách tính chuẩn tắc ở đây:

            Sau đó, bạn sẽ hiểu tất cả các cách tính khác mọi người nêu trong diễn đàn. Đó là các cách tính nhanh thôi. Bạn hiểu bản chất cách tính rồi thì lúc tính nhanh sẽ không bị sai.
            Hy vọng bài viết của mình giúp được bạn chút ít.
            Thân chào

            Comment


            • #21
              Re: Xin chỉ cách tính WILDCARD!

              Lâu rồi không có ai trả lời,

              Giải lại bài toán ban đầu, filter các máy từ 192.168.1.19 đến 192.168.1.99

              19 -> 0001 0011
              31 -> 0001 1111
              => Subnet 192.168.1.16 Mask 0.0.0.15

              32 -> 001 00000
              63 -> 001 11111
              => Subnet 192.168.1.32 Mask 0.0.0.31

              64 -> 010 00000
              95 -> 010 11111
              => Subnet 192.168.1.64 mask 0.0.0.31

              96 -> 011000 00
              99 -> 011000 11
              => Subnet 192.168.1.96 mask 0.0.0.3

              Kế tiếp đối với các máy có IP lẻ thì có bit cuối là 1, IP chẵn có bit cuối là 0, giả sử ta xét range 32-63: (Subnet 192.168.1.32 Mask 0.0.0.31)

              32 -> 001 00000
              34 -> 001 00010
              35 -> 001 00110
              38 -> 001 01110

              62 -> 001 11110

              Mask 0.0.0.00011110

              => Subnet 192.168.1.32 Mask 0.0.0.30

              Các trường hợp khác thì sao :roll:

              Comment


              • #22
                Bàn chút xíu xìu xiu về Wildcard Mask



                :D
                :D Hi hi, mình xin có một số vấn đề về Wildcard sau đây, chắc là có những điểm còn thiếu sót, mong các members giúp mình nhé ! Thanks. Cheers .

                Một số vấn đề về Wildcard :

                1/ Ý nghĩa :
                Dùng để router lọc (filter) những địa chỉ IP theo ý muốn. Quá trình lọc theo mình có thể hiểu như thế này, không biết có đúng hay không nữa:
                - Check :Router biết sẽ nên check những bits nào, để từ đó xáx định đúng đối tượng mà Router muốn permit or deny.
                - Mình lấy thí dụ : net: 172.168.16.0/24 : muốn "để ý" đến ip này thì Router cần phải check những bit nào từ một rừng ip send tới Router :( hic hic ...
                - Mình sẽ quay lại vấn đề : làm thế nào để Router biết chọn những bit nào để kiểm tra một rừng bit và lọc ra một/một số ip addr cần thiết. Administrator sẽ trực tiếp ghi những số WC này để chủ động "kêu" Router "mày hãy chọn ra cho tao những thằng ip này này .... " (hoặc có thể sẽ có một cơ chế/ chương trình lọc dynamic nào đó cấp cao hơn, ko cần ngồi tính và gõ trực tiếp wildcard )
                Cuối bước này, một nhóm các đối tương ip đã được router chọn ra , "khoanh vùng" theo lệnh của admin ;)
                - Sau khi đã "chọn ra những thằng ip cần thiết" theo yêu cầu của admin, admin sẽ chủ động ra lệnh "Router, mày hãy permit (or deny) những thằng đó nhé !"

                - Chi tiết về permit/deny , in/out ........ sẽ được bàn ở lần sau nhé, đại khái là admin "kêu" router hãy cho phép những thằng đó (những thằng ip mà router vừa mới "khoanh vùng") qua/ko qua Router, qua/ko qua Serialx/Ethernetx,...

                - Xong vấn đề thứ nhất, hi hi hi.

                2/ Vấn đề lúc nãy tôi nói là sẽ quay lại sau: làm cách nào mà Router biết chọn những bit nào để khoanh vùng, chọn lọc theo ý muốn của admin. Có 2 cách :
                a) Dynamic cấp cao gì gì đó thì minh ko biết, có thể mình ghi tiếng Việt luôn :"Tui cần lọc thằng ip: 172.168.9.0/24 !" thì sẽ có 1 chương trình translate câu đó sang code / command cho thằng Router hiểu. Nhưng giỡn thui, cái này còn "thai về tương luộc" á !!!! :((( ??

                (đáp án: thuộc về tương lai ) :) :) :) hihihi


                b) Vấn đề lớn : Admin sẽ tự translate ý đồ của mình sang command và hắn (admin) gõ vô cho router. Vậy, bằng cách nào mà thằng admin tính được wildcard thỏa mãn ý đồ của hắn ??? Nghĩa là : cách tính wildcard như thế nào ???? : tôi sẽ trình bày (sơ sơ, tại tui cũng mới vừa đọc qua tức thì ! ;( ) :

                ý niệm admin :
                + Lọc 1 khoảng ip , vd, lọc từ 172.168.3.0/24 đến tận 172.173.67.0/24 (ip sau > ip đầu ). Gọi là lọc liên tục.
                + Lọc Rời rạc, vd như lọc thằng net 123.12.5.0/24 và thằng net 154.174.73.0/24 .

                Rồi, vậy là : lọc liên tục và lọc rời rạc, 2 vấn đề.

                a.1) Lọc liên tục :
                - Lọc liên tục đây đủ: vd: "tui" muốn lọc từ mạng 172.168.32.0/24 -> mạng 172.168.63.0/24.

                Dạng đầy đủ : lưu ý phần khác nhau giữ 2 ip trên
                hãy để ý con số 32 -> 63 : lọc liên tục đầy đủ thì những con số ở
                dạng đó (mô hờ ? (mơ hồ), ko seo, tiếp tục nè )
                32 : 100000 (1 + toàn số 0 - lưu ý, có thể có số 1 tiếp theo trong TH khác, nhưng đó là phần giống nhau) (hơi khó hiểu) ( 6 bits)
                63= 111111 (toàn số 1). (6 bit luôn, phải = 6 bit ở trên -vì sao ư? hãy tiếp tục !)
                Đầy đủ -> phải ở dạng đó ! vì sao gọi là đầy đủ ? vì nó vét vừa đủ : (vét vừa đủ là sao ? đọc tiếp : )

                giải:

                172.168. 001 | 00000 .0
                172.168. 001 | 11111 .0

                để ý : 00000 -> 00001 -> 00010 -> 00011 ->00100 -> ........->
                ->....-> 11111 . Bđ : 00000, kthúc : 11111. (đầy đủ + bằng số bit+ liên tục )
                Đây là câu trả lời của những thắc mắc trên.


                octec (chữ octec viết vầy đúng ko ta ?) thứ 3 có 5 bit cuối khác nhau, và chạy trên 1 khoảng đầy đủ -> not care những bit này (tức là ko cần kiểm tra, cứ để vét cạn từ 00000 -> 11111.)

                2 octec đầu và 3 bit kế giống nhau, net id giống nhau cho tất cả -> phải check những bit này.

                "router" quy ước : check = 0, not care : =1. Như vậy ta được :

                octec cuối của host . Vì admin muốn lọc net nên phần host là vét cạn, ko chừa thằng nào từ 00000000 -> 11111111 => not care, cứ để vét cạn.

                172.168. 001 | 00000 .0
                172.168. 001 | 11111 .0
                ---------------------------------------
                0 .0 . 000 | 11111. 11111111

                hay 0.0.31.255 Đây chính là Wildcard thỏa ý đồ admin .

                (nhắc lại : ý đồ admin : lọc ra, khoanh vùng, tất cả những thằng ip từ 172.168.32.0/24 đến 172.168.63.0/24)


                Xong phần liên tục đầy đủ. Đây là basic cho phần liên tục ko đầy đủ.

                - Kế, là liên tục ko đầy đủ.
                Chẳng qua là kết hợp của những thằng liên tục đầy đủ lại thôi. Nghĩa là chia 1 khoảng ko đđ thành nhiều khoảng nhỏ hơn đầy đu đủ ;)
                vd: mạng 172.168.3.0/24 đến tận
                .................... (liên tục) (ko thỏa dạng trên kia nên ko đ đ )
                172.168.17.0/24

                => gợi ý : chia làm 4 khoảng :
                172.168.3.0 WM : 0.0.0.255
                .4.0 -> .7.0 0.0.3.255
                .8.0 -> .15.0 0.0.7.255
                .16.0 -> .17.0 0.0.1.255
                Xong.

                Các bạn lưu ý tính nhanh : gợi ý : các chuẩn đầy đủ có sẵn: (tính nhanh)
                4->7 (khác 2 bit cuối) => .00000011.255 => .3.255
                8->15 ( 3 ) => .7.255
                16-> 31( 4 ) .15.255 .......
                ............................
                sau khi đưa về các chuẩn ấy, phần dư còn lại sẽ tính chính thống, hihi
                => dễ dàng .


                a.2) Phần rời rạc, lọc lấy các mạng rời rạc :

                sẽ trình bày sau.


                Tôi cũng mới vừa đọc phần WM xong tức thì, nên lẽ dĩ nhiên bài viết này cón nhiều sai sót, thậm chí sai bét ! Mong các members góp ý. Vả lại, tôi viết vội nên ko kịp suy nghĩ, "lọc" kỹ lưỡng từng từ, từng ý, think nào trong đầu cũng permit any (out) hết, vì thế, sai xót, sai bét là lẽ đương nhiên.

                Xin chào./. :wink:

                Comment


                • #23
                  Bạn có kiến thức hoàn hảo về WC!

                  Mong được trao đổi nhiều hơn
                  mến
                  Vietnamese Professionals (VnPro)
                  Tel: +84 8 5124257 - 5125314
                  Fax: +84 8 5124314
                  149/1D Ung Văn Khiêm, P25, Q. Bình Thạnh
                  Tp.Ho Chi Minh
                  http://www.chuyenviet.com

                  VnPro - The way to get knowledge

                  Comment


                  • #24
                    hichic, mình có viết lộn nè, xin moderator đính chính, edited lại giùm mình nhé, hichic ....: sửa 16 ->32


                    a.1) Lọc liên tục : (Đính chính : 32 chứ ko phải 16 hàng thứ 5 từ đây trở xuống)
                    - Lọc liên tục đây đủ: vd: "tui" muốn lọc từ mạng 172.168.32.0/24 -> mạng 172.168.63.0/24.


                    Dạng đầy đủ : lưu ý phần khác nhau giữ 2 ip trên
                    (HÀNG NÀY NÈ , hichic) hãy để ý con số 16 (CHỖ NÀY NÈ : 32 chứ ko phải 16 ) -> 63 : lọc liên tục đầy đủ thì những con số ở
                    dạng đó (mô hờ ? (mơ hồ), ko seo, tiếp tục nè )
                    32 : 100000 (1 + toàn số 0 - lưu ý, có thể có số 1 tiếp theo trong TH khác, nhưng đó là phần giống nhau) (hơi khó hiểu) ( 6 bits)
                    63= 111111 (toàn số 1). (6 bit luôn, phải = 6 bit ở trên -vì sao ư? hãy tiếp tục !)
                    Đầy đủ -> phải ở dạng đó ! vì sao gọi là đầy đủ ? vì nó vét vừa đủ : (vét vừa đủ là sao ? đọc tiếp : )

                    Comment


                    • #25
                      Hateboy hãy làm thử 1 ví dụ này nha : :wink:

                      Mình có 2 mạng thế này :

                      192.168.208.0/24
                      192.168.216.0/24

                      Bây giờ mình muốn viết Access-List để cấm các packet trong range 208 ---> 216.

                      Hateboy giúp mình với nha. :wink:
                      Vnpro - The way to get knowledge
                      Mikami - UMass
                      E-mail : mikami@vnpro.org

                      Comment


                      • #26
                        hi Mikami!
                        Sao Mikami lại hỏi một câu tương đối đơn giản thế này!!!???
                        1'hpSky!

                        Comment


                        • #27
                          Vậy mình thêm điều kiện nha :

                          Cũng với đề bài trên, nhưng số dòng access-list fải là ít nhất :wink:
                          Vnpro - The way to get knowledge
                          Mikami - UMass
                          E-mail : mikami@vnpro.org

                          Comment


                          • #28
                            access-list 101 deny ip 192.168.208.0 0.0.0.255 192.168.216.0 0.0.0.255
                            access-list 101 permit ip any any

                            Comment


                            • #29
                              Bạn Mikami gì gì đó ơi :

                              Hình như là :
                              chia làm 2 khoảng thì phải :
                              192.168.208.0/24 -> 192.168.215.0/24 : WM : 0.0.7.255
                              và 1 thằng riêng :
                              192.168.216.0/24 : WM : 0.0.0.255
                              (chú ý là liên tục đó nhé)

                              . Thông thường tui thấy người ta hay cho những ip giống nhau 2 octec đầu ko ha.
                              Bạn thử làm xem, khác nhau tùm lum nè :
                              192.168.208.128/24
                              tới : tận :
                              197.172.27.128/24
                              :mad:
                              (hi hi, hơi bị dài và mệt xỉu luôn đó ...) :D

                              Comment


                              • #30
                                trả lời của flag là đúng rồi đó

                                Comment

                                Working...
                                X