ipV6
ipV6 - configure the ipV6 options for a stream
SYNOPSIS
ipV6 sub-command options
DESCRIPTION
The ipV6 command is used to configure the IPv6 options associated with a stream a stream set and stream write must follow an ipV6 set command. The ipV6 object also includes list of extension headers. Extension headers are built-in with type specific objects:
An extension header is added to a ipV6 object by configuring the extension header with the appropriate command from the list above and then adding it to the group with ipV6 addExtensionHeader type, where type indicates which of the extensions to use. An extension may be retrieved from an ipV6 object through the use of getFirstExtensionHeader / getNextExtensionHeader. These commands return the name of the command that was used to configure the header extension. The type of the extension header can be determined from the nextHeader value from the ipV6 command (for the first extension header) or from the previous extension header otherwise. This is typically used in the following sequence of commands:
set eHeader [ipV6 getFirstExtensionHeader]
set nextType [$eHeader cget -nextHeader]
In addition, if this is to be the header to a TCP, UDP or ICMP packet, then a separate call to ipV6 addExtensionHeader must be made with tcp, udp or icmpV6 must be made. For example:
ipV6 addExtensionHeader tcp
Although it is the default, ipV6 addExtensionHeader ipV6NoNextHeader may be used to indicate that there is no header following this one.
Note that stream get must be called before this command's get sub-command.
The source and destination addresses may be set from the result of a PPP negotiation through the use of the enableDestSyncFromPpp and enableSourceSyncFromPpp options. Note that it is necessary to wait until the PPP session has been negotiated before:
- performing a chassis refresh command
- performing a stream get command
- performing an ipV6 get command
- reading the destAddr and sourceAddr values using ipV6 cget
STANDARD OPTIONS
destAddr
The destination address, expressed as any valid IPv6 format address. (default = {0:0:0:0:0:0:0:0})
destAddrMode
The manner in which the destination address is modified per packet. For all but the default case, one of the UDFs is reserved for this use.
Option |
Value |
Usage |
Valid with Address Prefix: |
---|---|---|---|
ipV6Idle |
0 |
(default) No change to address. |
All |
ipV6IncrHost |
1 |
Increment the host part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6DecrHost |
2 |
Decrement the host part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6IncrNetwork |
3 |
Increment the network part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6DecrNetwork |
4 |
Increment the network part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6IncrInterfaceId |
5 |
For use when the address is Link Local Unicast, Site Local Unicast or Global Unicast. Increments the interface ID part of the address. |
Global Unicast, Link Local Unicast, Site Local Unicast |
ipV6DecrInterfaceId |
6 |
For use when the address is Link Local Unicast, Site Local Unicast or Global Unicast. Decrements the interface ID part of the address. |
Global Unicast, Link Local Unicast, Site Local Unicast |
ipV6IncrGlobalUnicastTopLevelAggrId |
7 |
For use when the address is Global Unicast. Increments the top level aggregation ID part of the address. |
Global Unicast |
ipV6DecrGlobalUnicastTopLevelAggrId |
8 |
For use when the address is Global Unicast. Decrements the top level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrGlobalUnicastNextLevelAggrId |
9 |
For use when the address is Global Unicast. Increments the next level aggregation ID part of the address. |
Global Unicast
|
ipV6DecrGlobalUnicastNextLevelAggrId |
10 |
For use when the address is Global Unicast. Decrements the next level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrGlobalUnicastSiteLevelAggrId |
11 |
For use when the address is Global Unicast. Increments the site level aggregation ID part of the address. |
Global Unicast
|
ipV6DecrGlobalUnicastSiteLevelAggrId |
12 |
For use when the address is Global Unicast. Decrements the site level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrSiteLocalUnicastSubnetId |
13 |
For use when the address is Site Local Unicast. Increments the Subnet ID part of the address. |
Site Local Unicast |
ipV6DecrSiteLocalUnicastSubnetId |
14 |
For use when the address is Site Local Unicast. Decrements the Subnet ID part of the address. |
Site Local Unicast
|
ipV6IncrMulticastGroupId |
15 |
For use when the address is Multicast. Increments the multicast group part of the address. |
Multicast |
ipV6DecrMulticastGroupId |
16 |
For use when the address is Multicast. Decrements the multicast group part of the address. |
Multicast |
ipV6IncrementGlobalUnicastGlobalRoutingPrefixId |
17 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6DecrementGlobalUnicastGlobalRoutingPrefixId |
18 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6IncrementSubnetId |
19 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6DecrementSubnetId |
20 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
destAddrRepeat
Count
The number of times to repeat the function indicated in destAddrMode (except ipV6Idle) before restarting the address at destAddr. (default = 10)
destMask
The number of bits in the network mask part of the address, counting from the high-order bits. For use with destAddrMode set to all but ipV6Idle mode.
This command's valid range is dependent on what options is selected in
destAddrMode above:
Option |
Range |
---|---|
decrMulticastGroupId |
fixed at 96 |
incrMulticastGroupId |
fixed at 96 |
decrGlobalUnicastTopLevelAggregationId |
fixed at 4 |
incrGlobalUnicastTopLevelAggregationId |
fixed at 4 |
decrGlobalUnicastNextLevelAggregationId |
fixed at 24 |
incrGlobalUnicastNextLevelAggregationId |
fixed at 24 |
decrGlobalUnicastSiteLevelAggregationId |
fixed at 48 |
incrGlobalUnicastSiteLevelAggregationId |
fixed at 48 |
decrSiteLocalUnicastSubnetId |
fixed at 48 |
incrSiteLocalUnicastSubnetId |
fixed at 48 |
incrHost |
96 to 128 |
decrHost |
96 to 128 |
decrNetwork |
96 to 128 |
incrMetwork |
96 to 128 |
decrInterfaceId |
96 to 128 |
incrInterfaceId |
96 to 128 |
ipIncrementGlobalUnicastGlobalRoutingPrefixId |
16 to 48 |
ipDecrementGlobalUnicastGlobalRoutingPrefixId |
16 to 48 |
ipIncrementSubnetId |
Range- fixed at 48 |
ipDecrementSubnetId |
Range- fixed at 48 |
destStepSize
The amount to increment the address by between iterations. For use with destAddrMode set to all but ipV6Idle mode. (default = 1)
enableDestSyncFrom
Ppp true | false
If true, then the destAddr is set from negotiated PPP session. See the note at the head of this command about interaction with the PPP negotiation process. (default = false)
enableSourceSyncFrom
Ppp true | false
If true, then the sourceAddr is set from negotiated PPP session. See the note at the head of this command about interaction with the PPP negotiation process. (default = false)
flowLabel
The flow label for the IPv6 address. (default = 0)
hopLimit
The hop limit for the IPv6 address. (default = 255)
nextHeader
The type of the next packet header.
Option |
Value |
Usage |
---|---|---|
ipV6HopByHopOptions |
0 |
Next header is hop-by-hop options. |
ipV6Routing |
43 |
Next header has routing options. |
ipV6Fragment |
44 |
Payload is a fragment. |
ipV6EncapsulatingSecurityPayload |
50 |
Next header is an IPSEC ESP. |
ipV6Authentiication |
51 |
Next header is an IPSEC AH. |
ipV6NoNextHeader |
59 |
There is no next header. |
ipV6DestinationOptions |
60 |
Next header has destination options. |
tcp |
6 |
Next header is TCP. |
udp |
17 |
Next header is UDP. |
icmpV6 |
58 |
Next header is ICMP V6. |
payloadLength
Read-only. The calculated payload length.
sourceAddr
The source address, expressed as any valid IPv6 format address. (default = {0:0:0:0:0:0:0:0})
sourceAddrMode
The manner in which the source address is modified per packet. For all but the default case, one of the UDFs is reserved for this use.
Option |
Value |
Usage |
Valid with Address Prefix: |
---|---|---|---|
ipV6Idle |
0 |
(default) No change to address. |
All |
ipV6IncrHost |
1 |
Increment the host part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6DecrHost |
2 |
Decrement the host part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6IncrNetwork |
3 |
Increment the network part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6DecrNetwork |
4 |
Increment the network part of the address (as indicated by sourceMask) by sourceStepSize for sourceAddrRepeatCount before restarting at the sourceAddr value. |
Reserved, NSAP Allocation, IPX Allocation, User Defined |
ipV6IncrInterfaceId |
5 |
For use when the address is Link Local Unicast, Site Local Unicast or Global Unicast. Increments the interface ID part of the address. |
Global Unicast, Link Local Unicast, Site Local Unicast |
ipV6DecrInterfaceId |
6 |
For use when the address is Link Local Unicast, Site Local Unicast or Global Unicast. Decrements the interface ID part of the address. |
Global Unicast, Link Local Unicast, Site Local Unicast |
ipV6IncrGlobalUnicastTopLevelAggrId |
7 |
For use when the address is Global Unicast. Increments the top level aggregation ID part of the address. |
Global Unicast |
ipV6DecrGlobalUnicastTopLevelAggrId |
8 |
For use when the address is Global Unicast. Decrements the top level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrGlobalUnicastNextLevelAggrId |
9 |
For use when the address is Global Unicast. Increments the next level aggregation ID part of the address. |
Global Unicast
|
ipV6DecrGlobalUnicastNextLevelAggrId |
10 |
For use when the address is Global Unicast. Decrements the next level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrGlobalUnicastSiteLevelAggrId |
11 |
For use when the address is Global Unicast. Increments the site level aggregation ID part of the address. |
Global Unicast
|
ipV6DecrGlobalUnicastSiteLevelAggrId |
12 |
For use when the address is Global Unicast. Decrements the site level aggregation ID part of the address. |
Global Unicast
|
ipV6IncrSiteLocalUnicastSubnetId |
13 |
For use when the address is Site Local Unicast. Increments the Subnet ID part of the address. |
Site Local Unicast |
ipV6DecrSiteLocalUnicastSubnetId |
14 |
For use when the address is Site Local Unicast. Decrements the Subnet ID part of the address. |
Site Local Unicast
|
ipV6IncrMulticastGroupId |
15 |
For use when the address is Multicast. Increments the multicast group part of the address. |
Multicast |
ipV6DecrMulticastGroupId |
16 |
For use when the address is Multicast. Decrements the multicast group part of the address. |
Multicast |
ipV6IncrementGlobalUnicastGlobalRoutingPrefixId |
17 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6DecrementGlobalUnicastGlobalRoutingPrefixId |
18 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6IncrementSubnetId |
19 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
ipV6DecrementSubnetId |
20 |
Increments the corresponding field of the new Global Unicast 3587 address mode |
Global Unicast 3587 |
sourceAddrRepeat
Count
The number of times to repeat the function indicated in sourceAddrMode (except ipV6Idle) before restarting the address at sourceAddr. (default = 10)
sourceMask
The number of bits in the network mask part of the address, counting from the high-order bits. For use with sourceAddrMode set to all but ipV6Idle mode.
This command's valid range is dependent on what options is selected in
destAddrMode above:
Option |
Range |
---|---|
decrMulticastGroupId |
fixed at 96 |
incrMulticastGroupId |
fixed at 96 |
decrGlobalUnicastTopLevelAggregationId |
fixed at 4 |
incrGlobalUnicastTopLevelAggregationId |
fixed at 4 |
decrGlobalUnicastNextLevelAggregationId |
fixed at 24 |
incrGlobalUnicastNextLevelAggregationId |
fixed at 24 |
decrGlobalUnicastSiteLevelAggregationId |
fixed at 48 |
incrGlobalUnicastSiteLevelAggregationId |
fixed at 48 |
decrSiteLocalUnicastSubnetId |
fixed at 48 |
incrSiteLocalUnicastSubnetId |
fixed at 48 |
incrHost |
96 to 128 |
decrHost |
96 to 128 |
decrNetwork |
96 to 128 |
incrMetwork |
96 to 128 |
decrInterfaceId |
96 to 128 |
incrInterfaceId |
96 to 128 |
ipIncrementGlobalUnicastGlobalRoutingPrefixId |
16 to 48 |
ipDecrementGlobalUnicastGlobalRoutingPrefixId |
16 to 48 |
ipIncrementSubnetId |
Range- fixed at 48 |
ipDecrementSubnetId |
Range- fixed at 48 |
sourceStepSize
The amount to increment the address by between iterations. For use with sourceAddrMode set to all but ipV6Idle mode. (default = 1)
trafficClass
The traffic class for the ipV6 address. (default = 3)
COMMANDS
The ipV6 command is invoked with the following sub-commands. If no sub-command is specified, returns a list of all sub-commands available.
ipV6 addExtensionHeader type
Adds an extension header of the type indicated in the type argument. The data for the extension is read from the object that corresponds to the type.
Option |
Value |
Usage |
---|---|---|
ipV6HopByHopOptions |
0 |
Data is read from ipV6HopByHop |
ipV6Routing |
43 |
Data is read from ipV6Routing |
ipV6Fragment |
44 |
Data is read from ipV6Fragment |
ipV6EncapsulatingSecurityPayload |
50 |
Not supported in the current release. |
ipV6Authentication |
51 |
Data is read from ipV6Authentication |
ipV6DestinationOptions |
60 |
Data is read from ipV6Destination |
ipV6NoNextHeader |
59 |
(default) There is no next header. |
tcp |
6 |
Next header is TCP. |
udp |
17 |
Next header is UDP. |
icmpV6 |
58 |
Next header is ICMP V6. |
ipV6 cget option
Returns the current value of the configuration option given by option. Option may have any of the values accepted by the ipV6 command.
ipV6 clearAllExtensionHeaders
Removes all of the extension headers from the list.
ipV6 config option value
Modify the ipV6 options. If no option is specified, returns a list describing all of the available ipV6 options (see STANDARD OPTIONS) for port.
ipV6 decode capFrame [chasID cardID portID]
Decodes a captured frame in the capture buffer and updates TclHal. ipV6 cget option command can be used after decoding to get the option data.
ipV6 delExtensionHeader
Deletes the currently referenced extension header accessed through the use of getFirstExtensionHeader / getNextExtensionHeader. Specific errors include:
- No current header has been accessed.
ipV6 get chasID cardID portID
Gets the current ipV6 options for the indicated port. Note that stream get must be called before this command's get sub-command. Call this command before calling ipV6 cget option value to get the value of the configuration option.
ipV6 getFirstExtensionHeader
Access the first extension header in the list. The results of the command is the name of the command used to make the extension header. This command may be symbolically used to view/modify the extension header contents. The type of the extension header is determined from the nextHeader value from the ipV6 command (for the first extension header) or from the previous extension header otherwise. Note that the use of the addExtensionHeader sub-command for the tcp, udp, icmpV6 and ipV6NoNextHeader options does not result in a list element. In the current release, the IxExplorer tool allows extension headers of the type ipv6HopBHopOptions to be placed in the list. An attempt to retrieve such a header results is no element retrieval and the remainder of the list is inaccessible. Specific errors are:
- There are no extension headers in the list
ipV6 getNextExtensionHeader
Access the next header extension in the list. See the notes and errors in the getFirstExtensionHeader sub-command.
ipV6 set chasID cardID portID
Sets the ipV6 options by reading the configuration option values set by the ipV6 config option value command. This command should be followed by a stream set and stream write commands.
ipV6 setDefault
Sets to IxTclHal default values for all configuration options.
EXAMPLES
package req IxTclHal
chassis add thebrain
set chasId [chassis cget -id]
set cardId 2
set portId 3
set streamId 1
stream setDefault
stream config -framesize 200
# Configure protocol
protocol setDefault
protocol config -name ipV6protocol config -ethernetType ethernetII
# Configure ipV6
ipV6 setDefault
ipV6 config -trafficClass 3
ipV6 config -sourceAddr {1:2:3:0:0:0:0:0}
ipV6 config -sourceMask 64
ipV6 config -sourceAddrMode ipV6Idle
ipV6 config -sourceStepSize 1
ipV6 config -sourceAddrRepeatCount 10
ipV6 config -destAddr {4:5:6:0:0:0:0:0}
# Clear all the extension headers
ipV6 clearAllExtensionHeaders
# Configure and add ipV6Routing extension header
ipV6Routing setDefault
ipV6Routing config -reserved {88 88 88 88}
ipV6Routing config -nodeList {7777:7777:7777:7777:7777:7777:7777:7777, 8888:8888:8888:8888:8888:8888:8888:8888}
if {[ipV6 addExtensionHeader ipV6Routing ]} {
ixPuts "Error adding ipV6Routing "
}
# Configure and add ipV6DestinationOptions extension header
ipV6Destination setDefault
if {[ipV6 addExtensionHeader ipV6DestinationOptions ]} {
ixPuts "Error adding ipV6DestinationOptions "
}
# Configure and add ipV6Fragment extension header
ipV6Fragment setDefault
ipV6Fragment config -enableFlag false
ipV6Fragment config -fragmentOffset 345
ipV6Fragment config -identification 345
ipV6Fragment config -res 1
ipV6Fragment config -reserved 170
if {[ipV6 addExtensionHeader ipV6Fragment ]} {
ixPuts "Error adding ipV6Fragment"
}
# Configure and add ipV6Authentication extension header
ipV6Authentication setDefault
ipV6Authentication config -payloadLength 8
ipV6Authentication config -securityParamIndex 1212
ipV6Authentication config -sequenceNumberField 3434
ipV6Authentication config -authentication {44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44}
if {[ipV6 addExtensionHeader ipV6Authentication ]} {
ixPuts "Error adding ipV6Authentication"
}
ipV6HopByHop clearAllOptions
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "11 11 11 11"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionJumbo setDefault
ipV6OptionJumbo config -length 4
ipV6OptionJumbo config -payload 5
ipV6HopByHop addOption ipV6OptionJumbo
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 6
ipV6OptionPADN config -value "22 22 22 22 22 22"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 2
ipV6OptionPADN config -value "00 00"
ipV6HopByHop addOption ipV6OptionPADN
ipV6HopByHop addOption ipV6OptionPAD1
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 5
ipV6OptionPADN config -value "33 33 33 33 33"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionRouterAlert setDefault
ipV6OptionRouterAlert config -length 2
ipV6OptionRouterAlert config -routerAlert ipV6RouterAlertRSVP
ipV6HopByHop addOption ipV6OptionRouterAlert
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 5
ipV6OptionPADN config -value "44 44 44 44 44"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 2
ipV6OptionPADN config -value "88 88"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 1
ipV6OptionPADN config -value 00
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionBindingUpdate setDefault
ipV6OptionBindingUpdate config -length 10
ipV6OptionBindingUpdate config -acknowledge 1
ipV6OptionBindingUpdate config -home 1
ipV6OptionBindingUpdate config -router 1
ipV6OptionBindingUpdate config -duplicate 1
ipV6OptionBindingUpdate config -MAP 1
ipV6OptionBindingUpdate config -bicasting 1
ipV6OptionBindingUpdate config -prefixLength 5
ipV6OptionBindingUpdate config -sequenceNumber 5
ipV6OptionBindingUpdate config -lifeTime 5
ipV6HopByHop addOption ipV6OptionBindingUpdate
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "30 45 45 45"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionBindingAck setDefault
ipV6OptionBindingAck config -length 13
ipV6OptionBindingAck config -status 4
ipV6OptionBindingAck config -sequenceNumber 40
ipV6OptionBindingAck config -lifeTime 4
ipV6OptionBindingAck config -refresh 4
ipV6HopByHop addOption rprVendorSpecific
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "44 44 44 44"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 3
ipV6OptionPADN config -value "00 00 00"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionHomeAddress setDefault
ipV6OptionHomeAddress config -length 14
ipV6OptionHomeAddress config -address "1111:1111:1111:1111:1111:1111:1111:3"
ipV6HopByHop addOption ipV6OptionHomeAddress
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "22 22 22 16"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionBindingRequest setDefault
ipV6OptionBindingRequest config -length 9
ipV6HopByHop addOption ipV6OptionBindingRequest
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "00 00 00 00"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionMIpV6UniqueIdSub setDefault
ipV6OptionMIpV6UniqueIdSub config -length 24
ipV6OptionMIpV6UniqueIdSub config -subUniqueId 89
ipV6HopByHop addOption ipV6OptionMIpV6UniqueIdSub
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 2
ipV6OptionPADN config -value "10 13"
ipV6HopByHop addOption ipV6OptionPADN
ipV6OptionMIpV6AlternativeCoaSub setDefault
ipV6OptionMIpV6AlternativeCoaSub config -length 20
ipV6OptionMIpV6AlternativeCoaSub config -address "1414:1414:1414:1414:1414:1414:0:5"
ipV6HopByHop addOption ipV6OptionMIpV6AlternativeCoaSub
ipV6OptionPADN setDefault
ipV6OptionPADN config -length 4
ipV6OptionPADN config -value "00 00 00 00"
ipV6HopByHop addOption ipV6OptionPADN
if {[ipV6 addExtensionHeader ipV6HopByHopOptions]} {
ixPuts "Error adding ipV6Authentication"
}
# Add tcp
if {[ipV6 addExtensionHeader ipV4ProtocolTcp ]} {
ixPuts "Error adding tcp"
}
if {[ipV6 set $chasId $cardId $portId ]} {
ixPuts "Error setting ipV6 on port $chasId.$cardId.$portId"
}
# Configure tcp
tcp setDefault
tcp config -offset 5
tcp config -sourcePort 16
tcp config -destPort 26
tcp config -useValidChecksum true
if {[tcp set $chasId $cardId $portId ]} {
ixPuts "Error setting tcp on port $chasId.$cardId.$portId"
}
# Set and write the stream
if {[stream set $chasId $cardId $portId $streamId]} {
ixPuts "Error setting stream $streamId on port $chasId.$cardId.$portId"
}
if {[stream write $chasId $cardId $portId $streamId]} {
ixPuts "Error writing stream $streamId on port $chasId.$cardId.$portId"
SEE ALSO
stream, ipV6Authentication, ipV6Destination, ipV6Fragment, ipV6Routing.