[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: an SPD syntax example




Hi, I felt that original SPD syntax is good, which provides very good flexibility and ease of administering the policies in large enterprise environments.

   Consider that, there are 50 discrete subnets in an organization and
   the security needs to be applied for port 25, port 80 and port 110.
   With the original approach (ASN1), proposed by Steve, it only requires
   configuration of 50 ranges of IP addresses, 3 ranges of Ports and
   put them in one Selector list.

   If we go by approach suggested by 'Ravi', configuration of 150
   selector lists need to be created. This problem compounds when the
   remote site has multiple discrete subnets. Consider that, remote site
   has 20 subnets and that requires 3000 Selectors lists at the local end.

   Due to this, I feel, original ASN1 text, with some minor modification
   would be good.

SPD ::= SEQUENCE of SPDEntry

SPDEntry ::= SET OF SelectorSet

SelectorSet ::= SEQUENCE {
        sourceAddr      AddrList,
        destAddr        AddrList,
        protocol        INTEGER,        -- 8 bits
          sourcePort   srcPorts,
          destPort       dstPorts
        }

AddrList ::= SET OF AddrOrList

AddrOrList ::= CHOICE {
                        iPAddr  IPaddr  -- individual IP address
                        range   IPRange} -- IP address range

srcPorts := SET OF Ports

Ports :=  SEQUENCE OF {
                   startPort  start
                   endPort    end
              }
  Note: For clarity, I took ICMP part away.

If we go with this approach, some changes to 'Traffic Selector' in IKEv2 are required.
It means that, each traffic Selector should be able to accommodate
Number of IP address ranges
<all IP address ranges>
Protocol
Number of Port ranges
<all Port ranges>


thoughts?


Thanks Vamsi CTO Office www.intoto.com


At 10:20 AM 1/22/2004 -0500, Stephen Kent wrote:



It is better to make this as close to IKEv2 Traffic Selector as
possible. Based on that, each IP address range should be combined with
Protocol/Port Range. This ASN1 description seems to be creating a set with
multiple IP address ranges to a single Protocol and Port (Range).


Good point. I'll change the syntax, and the 2401bis text to align with the IKEv2 proposal format more closely. The effect is the same, ultimately, in terms of associating a set of values with the same SA.


AddrList ::= AddrOrRangeOrSubnet



AddrOrList ::= CHOICE { iPAddr IPaddr -- individual IP address range IPRange} -- IP address range

Above should become AddrOrRangeOrSubnet ::= CHOICE { ipAddr IPaddr range IPRange subnet subNet }

I don't see a need to refer to subnets separately. ranges suffice.


>
 IPaddr ::= CHOICE {
                        v4Addr          INTEGER, -- 32 bits
                        v6Addr [0]      INTEGER } -- 128 bits

IPRange ::= CHOICE {
v4range SEQUENCE {
start INTEGER, -- 32 bits
end INTEGER } -- 32 bits
v6range [0] SEQUENCE {
start INTEGER, -- 128 bits
end INTEGER } } -- 128 bits

Internally, subnet and IPAddr should be converted to range, if IKEv2 is used for key management.

Yes, we ultimately convert to range for the selector payload.


Steve