# NAME

      HTR_E_Out_Fragment_null_hmacmd5 - Host Transport Mode ESP Outbound Header Order (Fragment Header vs ESP (NULL, HMAC-MD5))

# TARGET

      Host

# SYNOPSIS

      HTR_E_Out_Fragment_hmacmd5.seq [-tooloption ...] -pkt HTR_E_Fragment_hmacmd5.def
        -tooloption : v6eval tool option
      See also HTR_E_common.def and HTR_common.def

# INITIALIZATION

For details of Network Topology, see 00README

Set NUT's SAD and SPD as following:

                  NET5      NET3
        HOST1_NET5 -- Router -- NUT
             <----transport------

Security Association Database (SAD)

source address | NUT_NET3
destination address | HOST1_NET5
SPI | 0x1000
mode | transport
protocol | ESP
ESP algorithm | NULL
ESP authentication | HMAC-MD5
ESP authentication key | TAHITEST89ABCDEF

Security Policy Database (SPD)

source address | NUT_NET3
destination address | HOST1_NET5
upper spec | any
direction | out
protocol | ESP
mode | transport

Update Neighbor Cache

1. Send ICMP Echo Request
2. Receive ICMP Echo Reply

# TEST PROCEDURE

     Tester                      Target
       |                           |
       |-------------------------->|
       |      ICMP Echo Request    |
       |      1st/2nd fragment     |
       |                           |
       |<--------------------------|
       |      ICMP Echo Reply      |
       |      1st/2nd fragment     |
       |        (with ESP)         |
       |                           |
       v                           v

1. Send ICMP Echo Request 1st and 2nd fragment
2. Receive ICMP Echo Reply with ESP 1st and 2nd fragment

ICMP Echo Request (original)

IP Header | Source Address | HOST1_NET5
| Destination Address | NUT_NET3
ICMP | Type | 128 (Echo Request)

ICMP Echo Request (1st fragment)

IP Header | Source Address | HOST1_NET5
| Destination Address | NUT_NET3
Fragment Header | Next Header | 58 (ICMP)
| Offset | 0
| MFlag | 1
Payload | data | 1st fragment of ICMP Echo Request

ICMP Echo Request (2nd fragment)

IP Header | Source Address | HOST1_NET5
| Destination Address | NUT_NET3
Fragment Header | Next Header | 58 (ICMP)
| Offset | 181
| MFlag | 0
Payload | data | 2nd fragment of ICMP Echo Request

ICMP Echo Reply with ESP (original)

IP Header | Source Address | NUT_NET3
| Destination Address | HOST1_NET5
ESP | SPI | 0x1000
| Algorithm | NULL
| Authentication Algorithm | HAMC-MD5
| Authentication Key | TAHITEST89ABCDEF
ICMP | Type | 129 (Echo Reply)

ICMP Echo Reply with ESP (1st fragment)

IP Header | Source Address | HOST1_NET5
| Destination Address | NUT_NET3
Fragment Header | Next Header | 50 (ESP)
| Offset | 0
| MFlag | 1
Payload | data | 1st fragment of ICMP Echo Reply with ESP

ICMP Echo Reply with ESP (2nd fragment)

IP Header | Source Address | HOST1_NET5
| Destination Address | NUT_NET3
Fragment Header | Next Header | 50 (ESP)
| Offset | 181
| MFlag | 0
Payload | data | 2nd fragment of ICMP Echo Reply with ESP

# JUDGMENT

      PASS: Both ICMP Echo Reply with ESP 1st and 2nd fragment received

# SEE ALSO

      perldoc V6evalTool

      IPSEC.html IPsec Test Common Utility