Software Reference Manual - Allied Telesis
Software Reference Manual - Allied Telesis
Software Reference Manual - Allied Telesis
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
AT-RG600 Residential Gateway<br />
<strong>Software</strong> reference manual – release 2-0-2
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
i<br />
AT-RG600 series Residential Gateway – <strong>Software</strong> reference manual<br />
STRE_SRM_AT-RG6xx_2-0-2_A1<br />
Copyright © 2004 <strong>Allied</strong> <strong>Telesis</strong> KK<br />
All rights reserved. No part of this publication may be reproduced without prior<br />
written permission from <strong>Allied</strong> <strong>Telesis</strong>.<br />
<strong>Allied</strong> <strong>Telesis</strong> reserves the right to make changes in specifications and other<br />
information contained in this document without prior written notice. The<br />
information provided herein is subject to change without notice. In no event shall<br />
<strong>Allied</strong> <strong>Telesis</strong> be liable for any incidental, special, indirect, or consequential<br />
damages whatsoever, including but not limited to lost profits, arising out of or<br />
related to this manual or the information contained herein, even if <strong>Allied</strong> <strong>Telesis</strong> has<br />
been advised of, known, or should have known, the possibility of such damages.<br />
All trademarks are the property of their respective owners.
Contents<br />
Preface.....................................................................................................................xvi<br />
Purpose of this <strong>Manual</strong> .....................................................................................................xvi<br />
Intended Audience........................................................................................................... xvii<br />
Standards and Protocols..................................................................................................... 1<br />
Background Reading .......................................................................................................... 2<br />
Publicly Accessible Documents .......................................................................................... 2<br />
Conventions used in command definitions ......................................................................... 3<br />
CHAPTER 1 System Management.................................................................................. 4<br />
Logging into the CLI............................................................................................................4<br />
Serial Connection................................................................................................................ 4<br />
TCP/IP connection.............................................................................................................. 4<br />
Command Line Interface and Console ............................................................................... 5<br />
Webserver........................................................................................................................... 5<br />
File System ......................................................................................................................... 6<br />
Boot code............................................................................................................................ 6<br />
System configuration information........................................................................................ 6<br />
Run-time images.................................................................................................................6<br />
Access permissions to the CLI............................................................................................ 7<br />
System Configuration Management.................................................................................... 7<br />
System Command <strong>Reference</strong>............................................................................................. 9<br />
System CLI commands....................................................................................................... 9<br />
system add user................................................................................................................ 10<br />
system add login............................................................................................................... 11<br />
system config CREATE .................................................................................................... 11<br />
system config DELETE ..................................................................................................... 12<br />
system config GET............................................................................................................ 12<br />
system config LIST ........................................................................................................... 13<br />
system config restore FACTORY...................................................................................... 13<br />
system config SET............................................................................................................ 14<br />
system config SHOW........................................................................................................ 15<br />
system delete login ........................................................................................................... 15<br />
system delete user............................................................................................................ 16<br />
system info........................................................................................................................ 16<br />
system list errors............................................................................................................... 16<br />
system list openfiles.......................................................................................................... 17<br />
system list users ...............................................................................................................17<br />
system list logins............................................................................................................... 18<br />
system log......................................................................................................................... 19<br />
system log enable|disable................................................................................................. 19<br />
system log list ................................................................................................................... 20<br />
system name.....................................................................................................................21<br />
system restart ................................................................................................................... 21<br />
system set login access .................................................................................................... 22<br />
system set login mayconfigure.......................................................................................... 22<br />
system set login maydialin ................................................................................................ 23<br />
system set user access..................................................................................................... 23<br />
system set user mayconfigure .......................................................................................... 23<br />
system set user maydialin................................................................................................. 24<br />
User Command <strong>Reference</strong> ............................................................................................... 25<br />
User CLI commands ......................................................................................................... 25<br />
user logout ........................................................................................................................ 25<br />
user password...................................................................................................................25<br />
user change ...................................................................................................................... 25<br />
Web Server Command <strong>Reference</strong>.................................................................................... 27<br />
Web Server CLI commands.............................................................................................. 27<br />
webserver clear stats........................................................................................................ 27<br />
ii
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
iii<br />
webserver enable|disable ................................................................................................. 27<br />
webserver set interface..................................................................................................... 28<br />
webserver set managementip........................................................................................... 28<br />
webserver set port ............................................................................................................ 29<br />
webserver set upnpport .................................................................................................... 29<br />
webserver show info ......................................................................................................... 29<br />
webserver show stats ....................................................................................................... 30<br />
Console Access Command <strong>Reference</strong> ............................................................................. 31<br />
Console access CLI commands ....................................................................................... 31<br />
console enable..................................................................................................................31<br />
console process................................................................................................................ 31<br />
Console command - exit ................................................................................................... 32<br />
CHAPTER 2 Switch.......................................................................................................... 33<br />
Introduction ....................................................................................................................... 33<br />
Switch Core Functional Overview ..................................................................................... 33<br />
Address Look-up............................................................................................................... 33<br />
Learning............................................................................................................................ 34<br />
Migration ........................................................................................................................... 34<br />
Aging................................................................................................................................. 34<br />
Forwarding........................................................................................................................ 34<br />
Switching engine............................................................................................................... 35<br />
Rate limiting support ......................................................................................................... 35<br />
Ingress Filtering limiting support ...................................................................................... 35<br />
Layer 3 routing rate limiting............................................................................................... 36<br />
Class of Service and Differentiated Services.................................................................... 36<br />
802.1p Traffic Priority........................................................................................................ 36<br />
Differentiated Services Code Point (DSCP)...................................................................... 37<br />
Switch Command <strong>Reference</strong> ............................................................................................ 39<br />
switch CLI commands....................................................................................................... 39<br />
switch disable ageingtimer................................................................................................ 39<br />
switch disable learning...................................................................................................... 40<br />
switch disable port ............................................................................................................ 40<br />
switch enable ageingtimer ................................................................................................ 40<br />
switch enable learning ...................................................................................................... 41<br />
switch enable port............................................................................................................. 41<br />
switch reset ....................................................................................................................... 41<br />
switch set ageingtimer ...................................................................................................... 42<br />
switch set port ................................................................................................................... 42<br />
switch set priority .............................................................................................................. 45<br />
switch set qos ................................................................................................................... 45<br />
switch set routing-limit....................................................................................................... 46<br />
switch show....................................................................................................................... 46<br />
switch show fdb.................................................................................................................47<br />
switch show port ............................................................................................................... 49<br />
switch show qos................................................................................................................ 52<br />
CHAPTER 3 VLAN .......................................................................................................... 53<br />
INTRODUCTION.................................................................................................................... 53<br />
VLAN TAGGING.................................................................................................................. 53<br />
VLAN SUPPORT ON AT-RG600 RESIDENTIAL GATEWAY ....................................................... 56<br />
VLAN definition and port tagging ...................................................................................... 56<br />
VLAN versus IP Interface.................................................................................................. 57<br />
VLAN Command <strong>Reference</strong> ............................................................................................. 60<br />
vlan CLI commands .......................................................................................................... 60<br />
vlan add port ..................................................................................................................... 60<br />
vlan add vid....................................................................................................................... 61<br />
vlan delete......................................................................................................................... 61<br />
vlan show .......................................................................................................................... 62
CHAPTER 4 Emergency.................................................................................................. 64<br />
INTRODUCTION.................................................................................................................... 64<br />
Emergency configuration .................................................................................................. 64<br />
Layer 2 vlan configuration................................................................................................. 64<br />
Layer 3 IP configuration.................................................................................................... 65<br />
Save and activate emergency configuration. .................................................................... 65<br />
Emergency command reference....................................................................................... 66<br />
Emergency CLI commands............................................................................................... 66<br />
EMERGENCY ADD .......................................................................................................... 67<br />
EMERGENCY CREATE ................................................................................................... 67<br />
EMERGENCY DELETE.................................................................................................... 68<br />
EMERGENCY SET DHCP................................................................................................ 69<br />
EMERGENCY SET IPINTERFACE GATEWAY ............................................................... 69<br />
EMERGENCY SET IPINTERFACE IPADDRESS ............................................................ 70<br />
EMERGENCY SHOW....................................................................................................... 70<br />
EMERGENCY UPDATE ................................................................................................... 71<br />
CHAPTER 5 IP .................................................................................................................. 72<br />
INTRODUCTION.................................................................................................................... 72<br />
THE INTERNET .................................................................................................................... 72<br />
ADDRESSING ...................................................................................................................... 74<br />
Subnets............................................................................................................................. 76<br />
IP SUPPORT ON AT-RG6XX RESIDENTIAL GATEWAY SERIES ................................................. 77<br />
Adding and attaching IP interfaces ................................................................................... 77<br />
IP stack and incoming packets ......................................................................................... 78<br />
Locally received packets................................................................................................... 78<br />
Forwarding packets........................................................................................................... 78<br />
Unconfigured interfaces.................................................................................................... 78<br />
Unnumbered interfaces..................................................................................................... 79<br />
Unconfigured interfaces v unnumbered interfaces ........................................................... 79<br />
Configuring unnumbered interfaces.................................................................................. 79<br />
Creating a route ................................................................................................................80<br />
Virtual Interfaces............................................................................................................... 80<br />
Configuring virtual interfaces ............................................................................................ 80<br />
Similarities between virtual interfaces and real interfaces ................................................ 81<br />
Differences between virtual interfaces and real interfaces ............................................... 81<br />
Secondary IP addresses................................................................................................... 82<br />
Configuring secondary IP addresses................................................................................ 82<br />
Functionality of secondary IP addresses .......................................................................... 83<br />
IP Quality of Service ......................................................................................................... 83<br />
Expedited class.................................................................................................................83<br />
Example of use of Prioritization ........................................................................................ 83<br />
Quality of Service support................................................................................................. 84<br />
Packet Classification......................................................................................................... 84<br />
Configuring Flow Qualifiers............................................................................................... 84<br />
Link bandwidth prioritization.............................................................................................. 85<br />
CPU prioritization ..............................................................................................................85<br />
TCP/IP Command <strong>Reference</strong> ........................................................................................... 87<br />
IP Tracing commands....................................................................................................... 87<br />
IP CLI commands ............................................................................................................. 87<br />
ip add defaultroute gateway.............................................................................................. 89<br />
ip add defaultroute interface ............................................................................................. 89<br />
ip add interface ................................................................................................................. 90<br />
ip add route....................................................................................................................... 91<br />
ip attach ............................................................................................................................ 92<br />
ip attachvirtual................................................................................................................... 93<br />
ip clear arpentries .............................................................................................................94<br />
ip clear interfaces.............................................................................................................. 94<br />
ip clear riproutes ............................................................................................................... 94<br />
iv
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
v<br />
ip clear routes ................................................................................................................... 94<br />
ip delete interface.............................................................................................................. 95<br />
ip delete route ................................................................................................................... 95<br />
ip detach interface.............................................................................................................96<br />
ip interface add fq codepoint............................................................................................. 96<br />
ip interface add fq protocol................................................................................................ 97<br />
ip interface add fq srcaddr codepoint................................................................................ 98<br />
ip interface add fq srcaddr protocol................................................................................... 99<br />
ip interface add proxyarpentry ........................................................................................ 100<br />
ip interface add proxyarpexclusion ................................................................................. 101<br />
ip interface add secondaryipaddress .............................................................................. 102<br />
ip interface clear fqs........................................................................................................ 103<br />
ip interface clear proxyarpentries.................................................................................... 104<br />
ip interface clear secondaryipaddresses......................................................................... 104<br />
ip interface delete fq........................................................................................................ 105<br />
ip interface delete proxyarpentries.................................................................................. 106<br />
ip interface delete proxyarpexclusion.............................................................................. 106<br />
ip interface delete secondaryipaddress .......................................................................... 107<br />
ip interface list fqs ........................................................................................................... 108<br />
ip interface list proxyarpentries ....................................................................................... 108<br />
ip interface list secondaryipaddresses ............................................................................ 109<br />
ip list arpentries............................................................................................................... 110<br />
ip list connections............................................................................................................ 110<br />
ip list interfaces ............................................................................................................... 111<br />
ip list riproutes................................................................................................................. 111<br />
ip list routes..................................................................................................................... 112<br />
ip ping ............................................................................................................................. 112<br />
ip set interface dhcp........................................................................................................ 113<br />
ip set interface ipaddress................................................................................................ 113<br />
ip set interface mtu.......................................................................................................... 114<br />
ip set interface netmask.................................................................................................. 115<br />
ip set interface rip accept ................................................................................................ 116<br />
ip set interface rip multicast ............................................................................................ 117<br />
ip set interface rip send................................................................................................... 117<br />
ip set interface tcpmssclamp........................................................................................... 118<br />
ip set rip advertisedefault ................................................................................................ 119<br />
ip set rip authentication ................................................................................................... 120<br />
ip set rip defaultroutecost................................................................................................ 120<br />
ip set rip hostroutes......................................................................................................... 121<br />
ip set rip password.......................................................................................................... 121<br />
ip set rip poison............................................................................................................... 122<br />
ip set route cost............................................................................................................... 122<br />
ip set route destination.................................................................................................... 123<br />
ip set route gateway........................................................................................................ 124<br />
ip set route interface ....................................................................................................... 125<br />
ip show............................................................................................................................ 125<br />
ip show interface............................................................................................................. 126<br />
ip show route................................................................................................................... 127<br />
CHAPTER 6 Transports ................................................................................................ 128<br />
Transports CLI commands.............................................................................................. 129<br />
transports clear ............................................................................................................... 129<br />
transports delete ............................................................................................................. 129<br />
transports list................................................................................................................... 130<br />
transports show............................................................................................................... 130<br />
CHAPTER 7 Ethernet..................................................................................................... 132<br />
Ethernet CLI commands ................................................................................................. 132<br />
ethernet add transport..................................................................................................... 132<br />
ethernet clear transports................................................................................................. 133
ethernet delete transport................................................................................................. 133<br />
ethernet list ports ............................................................................................................ 134<br />
ethernet list transports .................................................................................................... 134<br />
ethernet show transport .................................................................................................. 134<br />
CHAPTER 8 Security & Firewall................................................................................. 136<br />
Introduction ..................................................................................................................... 136<br />
Application Gateway ....................................................................................................... 136<br />
Stateful Inspection .......................................................................................................... 137<br />
Security support on AT-RG6xx Residential Gateway series........................................... 137<br />
Security Interfaces .......................................................................................................... 138<br />
Dynamic Port Opening and Triggers............................................................................... 139<br />
Non-Activity Timeout....................................................................................................... 140<br />
Session Chaining............................................................................................................ 140<br />
Firewall............................................................................................................................ 141<br />
Policy .............................................................................................................................. 142<br />
Portifilter.......................................................................................................................... 142<br />
Validator.......................................................................................................................... 142<br />
Intrusion Detection.......................................................................................................... 143<br />
Security Command <strong>Reference</strong>........................................................................................ 145<br />
Security CLI commands.................................................................................................. 145<br />
security add interface...................................................................................................... 145<br />
security add trigger tcp|udp............................................................................................. 146<br />
security add trigger netmeeting....................................................................................... 147<br />
security clear interfaces .................................................................................................. 148<br />
security clear triggers...................................................................................................... 148<br />
security delete interface.................................................................................................. 148<br />
security delete trigger...................................................................................................... 148<br />
security............................................................................................................................ 149<br />
security list interfaces...................................................................................................... 150<br />
security list triggers ......................................................................................................... 150<br />
security set trigger UDPsessionchaining ........................................................................ 150<br />
security set trigger addressreplacement ......................................................................... 151<br />
security set trigger binaryaddressreplacement ............................................................... 152<br />
security set trigger endport ............................................................................................. 153<br />
security set trigger maxactinterval .................................................................................. 153<br />
security set trigger multihost ........................................................................................... 154<br />
security set trigger sessionchaining ................................................................................ 154<br />
security set trigger startport ............................................................................................ 155<br />
security show interface ................................................................................................... 155<br />
security show trigger....................................................................................................... 155<br />
security status................................................................................................................. 156<br />
Firewall Command <strong>Reference</strong> ........................................................................................ 158<br />
Firewall CLI commands .................................................................................................. 158<br />
firewall add policy............................................................................................................ 159<br />
firewall add portfilter........................................................................................................ 160<br />
firewall add validator ....................................................................................................... 162<br />
firewall clear policies ....................................................................................................... 164<br />
firewall clear portfilters .................................................................................................... 164<br />
firewall delete policy........................................................................................................ 165<br />
firewall delete portfilter.................................................................................................... 165<br />
firewall delete validator ................................................................................................... 166<br />
firewall enable|disable..................................................................................................... 166<br />
firewall enable|disable IDS.............................................................................................. 167<br />
firewall enable|disable blockinglog.................................................................................. 168<br />
firewall enable|disable Intrusionlog ................................................................................. 168<br />
firewall enable|disable sessionlog................................................................................... 168<br />
firewall list policies .......................................................................................................... 169<br />
firewall list portfilters........................................................................................................ 169<br />
firewall list validators ....................................................................................................... 170<br />
vi
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
vii<br />
firewall set IDS DOSattackblock ..................................................................................... 171<br />
firewall set IDS MaxICMP ............................................................................................... 171<br />
firewall set IDS MaxPING ............................................................................................... 172<br />
firewall set IDS MaxTCPopenhandshake ....................................................................... 172<br />
firewall set IDS SCANattackblock ................................................................................... 173<br />
firewall set IDS blacklist .................................................................................................. 174<br />
firewall set IDS victimprotection ...................................................................................... 174<br />
firewall set securitylevel .................................................................................................. 175<br />
firewall show IDS ............................................................................................................ 177<br />
firewall show policy ......................................................................................................... 177<br />
Firewall show portfilter .................................................................................................... 178<br />
firewall show validator..................................................................................................... 179<br />
firewall status .................................................................................................................. 180<br />
CHAPTER 9 Network Address Translation - NAT ................................................. 181<br />
Network Address Translation.......................................................................................... 181<br />
Address conservation ..................................................................................................... 181<br />
Security........................................................................................................................... 182<br />
How does NAT work? ..................................................................................................... 182<br />
What about protocols other than UDP and TCP?........................................................... 184<br />
How can you let sessions into servers on the private LAN? ........................................... 184<br />
NAT support on AT-RG6xx Residential Gateway series ................................................ 185<br />
Global IP Address Pools................................................................................................. 185<br />
Reserved Mappings........................................................................................................ 186<br />
Application Level Gateways (ALGs) ............................................................................... 186<br />
Interactions of NAT and other security features.............................................................. 186<br />
Firewall filters and reserved mappings. .......................................................................... 186<br />
NAT and Dynamic Port Opening..................................................................................... 187<br />
NAT and secondary IP addresses .................................................................................. 187<br />
NAT Command <strong>Reference</strong>.............................................................................................. 188<br />
NAT CLI commands........................................................................................................ 188<br />
nat add globalpool........................................................................................................... 188<br />
nat add resvmap globalip................................................................................................ 190<br />
nat add resvmap interface name .................................................................................... 192<br />
nat clear globalpools....................................................................................................... 193<br />
nat clear resvmaps.......................................................................................................... 194<br />
nat delete globalpool....................................................................................................... 194<br />
nat delete resvmap ......................................................................................................... 195<br />
nat disable....................................................................................................................... 195<br />
nat enable ....................................................................................................................... 196<br />
nat iketranslation............................................................................................................. 197<br />
nat list globalpools .......................................................................................................... 198<br />
nat list resvmaps............................................................................................................. 199<br />
nat show globalpool ........................................................................................................ 200<br />
nat show resvmap........................................................................................................... 201<br />
nat status ........................................................................................................................ 201<br />
CHAPTER 10 IGMP snooping and IGMP proxy ....................................................... 203<br />
Multicasting Overview ..................................................................................................... 203<br />
Multicasting principles..................................................................................................... 203<br />
Group addresses ............................................................................................................ 203<br />
IGMP............................................................................................................................... 204<br />
Multicast MAC addresses ............................................................................................... 205<br />
IGMP snooping ............................................................................................................... 205<br />
IGMP snooping on AT-VP6x3 product family ................................................................. 206<br />
Multicast Router Port Discovery...................................................................................... 206<br />
Multicast Hosts Port Discovery ....................................................................................... 206<br />
Leaving a Group ............................................................................................................. 207<br />
Timeout interval expiring................................................................................................. 208<br />
IGMP proxy..................................................................................................................... 208
IGMP Snooping Command <strong>Reference</strong> ........................................................................... 209<br />
IGMP snooping CLI commands...................................................................................... 209<br />
igmp snooping disable .................................................................................................... 209<br />
igmp snooping enable..................................................................................................... 209<br />
igmp snooping set leavetime .......................................................................................... 210<br />
igmp snooping set queryinterval ..................................................................................... 210<br />
igmp snooping set timeout .............................................................................................. 210<br />
igmp snooping show ....................................................................................................... 211<br />
IGMP Proxy Command <strong>Reference</strong> ................................................................................. 212<br />
IGMP proxy CLI commands............................................................................................ 212<br />
igmp proxy set upstreaminterface................................................................................... 212<br />
igmp proxy show upstreaminterface ............................................................................... 212<br />
igmp proxy show status .................................................................................................. 213<br />
CHAPTER 11 Dynamic Host Configuration Protocol - DHCP................................ 214<br />
Introduction ..................................................................................................................... 214<br />
DHCP support on AT-RG6xx Residential Gateway series ............................................. 215<br />
DHCP server................................................................................................................... 215<br />
Example: ......................................................................................................................... 216<br />
DHCP client .................................................................................................................... 218<br />
Lease requirements and requests .................................................................................. 219<br />
Support for AutoIP .......................................................................................................... 219<br />
Additional DHCP client modes........................................................................................ 220<br />
Propagating DNS server information .............................................................................. 220<br />
Automatically setting up a DHCP server......................................................................... 220<br />
Example .......................................................................................................................... 221<br />
DHCP Relay.................................................................................................................... 222<br />
DHCP Server Command <strong>Reference</strong> ............................................................................... 223<br />
DHCP server CLI commands.......................................................................................... 223<br />
dhcpserver add fixedhost................................................................................................ 224<br />
dhcpserver add subnet ................................................................................................... 225<br />
dhcpserver clear fixedhost .............................................................................................. 225<br />
dhcpserver clear subnets................................................................................................ 226<br />
dhcpserver delete fixedhost ............................................................................................ 226<br />
dhcpserver delete subnet................................................................................................ 226<br />
dhcpserver enable|disable .............................................................................................. 227<br />
dhcpserver list fixedhost ................................................................................................. 227<br />
dhcpserver list options .................................................................................................... 228<br />
dhcpserver list subnets ................................................................................................... 229<br />
dhcpserver set allowunknownclients............................................................................... 230<br />
dhcpserver set bootp ...................................................................................................... 230<br />
dhcpserver set defaultleasetime ..................................................................................... 230<br />
dhcpserver set fixedhost ipaddress ................................................................................ 231<br />
dhcpserver set fixedhost macaddress ............................................................................ 231<br />
dhcpserver set fixedhost maxleasetime.......................................................................... 232<br />
dhcpserver set maxleasetime ......................................................................................... 232<br />
dhcpserver set subnet defaultleasetime ......................................................................... 233<br />
dhcpserver set subnet hostisdefaultgateway.................................................................. 233<br />
dhcpserver set subnet hostisdnsserver .......................................................................... 234<br />
dhcpserver set subnet maxleasetime ............................................................................. 235<br />
dhcpserver set subnet subnet......................................................................................... 235<br />
dhcpserver show............................................................................................................. 236<br />
dhcpserver show subnet ................................................................................................. 236<br />
dhcpserver subnet add iprange ...................................................................................... 237<br />
dhcpserver subnet add option......................................................................................... 238<br />
dhcpserver subnet clear ipranges................................................................................... 238<br />
dhcpserver subnet clear options ..................................................................................... 239<br />
dhcpserver subnet delete iprange................................................................................... 239<br />
dhcpserver subnet delete option..................................................................................... 240<br />
dhcpserver subnet list ipranges ...................................................................................... 241<br />
viii
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
ix<br />
dhcpserver subnet list options ........................................................................................ 241<br />
dhcpserver update .......................................................................................................... 242<br />
DHCP Client Command <strong>Reference</strong> ................................................................................ 243<br />
DHCP client CLI commands ........................................................................................... 243<br />
dhcpclient add interfaceconfig ........................................................................................ 244<br />
dhcpclient clear interfaceconfigs..................................................................................... 244<br />
dhcpclient delete interfaceconfig..................................................................................... 245<br />
dhcpclient interfaceconfig add requested option............................................................. 245<br />
dhcpclient interfaceconfig add required option ............................................................... 246<br />
dhcpclient interfaceconfig add sent option...................................................................... 247<br />
dhcpclient interfaceconfig clear requested options......................................................... 247<br />
dhcpclient interfaceconfig clear sent options .................................................................. 248<br />
dhcpclient interfaceconfig delete requested option......................................................... 249<br />
dhcpclient interfaceconfig delete sent option .................................................................. 250<br />
dhcpclient interfaceconfig list requested options ............................................................ 250<br />
dhcpclient interfaceconfig list sent options...................................................................... 251<br />
dhcpclient list interfaceconfigs ........................................................................................ 252<br />
dhcpclient set backoff ..................................................................................................... 253<br />
dhcpclient set interfaceconfig autoip............................................................................... 253<br />
dhcpclient set interfaceconfig clientid ............................................................................. 254<br />
dhcpclient set interfaceconfig defaultroute...................................................................... 255<br />
dhcpclient set interfaceconfig dhcpinform....................................................................... 256<br />
dhcpclient set interfaceconfig dhcpserverpoolsize.......................................................... 256<br />
dhcpclient set interfaceconfig dhcpserverinterface ......................................................... 257<br />
dhcpclient set interfaceconfig givednstoclient................................................................. 258<br />
dhcpclient set interfaceconfig givednstorelay ................................................................. 259<br />
dhcpclient set interfaceconfig interface........................................................................... 260<br />
dhcpclient set interfaceconfig noclientid ......................................................................... 260<br />
dhcpclient set interfaceconfig requestedleasetime ......................................................... 261<br />
dhcpclient set interfaceconfig server............................................................................... 262<br />
dhcpclient set reboot....................................................................................................... 262<br />
dhcpclient set retry.......................................................................................................... 263<br />
dhcpclient show .............................................................................................................. 263<br />
dhcpclient update............................................................................................................ 264<br />
DHCP Relay Command <strong>Reference</strong> ................................................................................ 265<br />
DHCP relay CLI commands............................................................................................ 265<br />
dhcprelay add server ...................................................................................................... 265<br />
dhcprelay clear servers................................................................................................... 265<br />
dhcprelay delete server................................................................................................... 266<br />
dhcprelay enable|disable ................................................................................................ 266<br />
dhcprelay list servers ...................................................................................................... 267<br />
dhcprelay show ............................................................................................................... 267<br />
dhcprelay update ............................................................................................................ 267<br />
CHAPTER 12 Domain Name System -DNS................................................................ 268<br />
Introduction ..................................................................................................................... 268<br />
DNS Relay ...................................................................................................................... 269<br />
DNS Client ...................................................................................................................... 269<br />
DNS Relay Command <strong>Reference</strong> ................................................................................... 270<br />
DNS Relay CLI commands ............................................................................................. 270<br />
dnsrelay add server ........................................................................................................ 270<br />
dnsrelay clear cache ....................................................................................................... 270<br />
dnsrelay clear landatabase ............................................................................................. 271<br />
dnsrelay clear servers..................................................................................................... 271<br />
dnsrelay delete server..................................................................................................... 271<br />
dnsrelay list servers ........................................................................................................ 272<br />
dnsrelay set landatabasefile ........................................................................................... 272<br />
dnsrelay show lanaddress .............................................................................................. 273<br />
dnsrelay show landomainname ...................................................................................... 273<br />
dnsrelay show landatabasefilename............................................................................... 273
DNS Client Command <strong>Reference</strong> ................................................................................... 274<br />
DNS Client CLI commands ............................................................................................. 274<br />
dnsclient add searchdomain ........................................................................................... 274<br />
dnsclient add server........................................................................................................ 274<br />
dnsclient clear searchdomains........................................................................................ 275<br />
dnsclient clear servers .................................................................................................... 275<br />
dnsclient delete searchdomain ....................................................................................... 275<br />
dnsclient delete server.................................................................................................... 276<br />
dnsclient list searchdomains........................................................................................... 276<br />
dnsclient list servers........................................................................................................ 276<br />
CHAPTER 13 SNTP ......................................................................................................... 278<br />
SNTP Features ............................................................................................................... 278<br />
Time Zones and Daylight Savings (Summer Time) Conversion ..................................... 279<br />
SNTP Command <strong>Reference</strong> ........................................................................................... 280<br />
SNTP CLI commands ..................................................................................................... 280<br />
sntpclient set clock.......................................................................................................... 280<br />
sntpclient set mode......................................................................................................... 280<br />
sntpclient set poll-interval................................................................................................ 281<br />
sntpclient set retries........................................................................................................ 282<br />
sntpclient set server........................................................................................................ 282<br />
sntpclient set timeout ...................................................................................................... 283<br />
sntpclient set timezone ................................................................................................... 283<br />
sntpclient show association ............................................................................................ 285<br />
sntp show status ............................................................................................................. 286<br />
sntpclient sync ................................................................................................................ 286<br />
CHAPTER 14 PPPoE ........................................................................................................ 287<br />
PPPoE support on the AT-RG6xx Residential Gateway series ...................................... 288<br />
Adding and attaching PPPoE connections ..................................................................... 289<br />
Negotiation of PPPoE connections................................................................................. 289<br />
PPPoE Command <strong>Reference</strong> ......................................................................................... 291<br />
PPPoE CLI commands ................................................................................................... 291<br />
pppoe add transport........................................................................................................ 291<br />
pppoe clear transports .................................................................................................... 293<br />
pppoe delete transport.................................................................................................... 293<br />
pppoe list transports........................................................................................................ 293<br />
pppoe set transport accessconcentrator......................................................................... 294<br />
pppoe set transport autoconnect .................................................................................... 295<br />
pppoe set transport autoconnect FILTER ADD .............................................................. 295<br />
pppoe set transport autoconnect FILTER delete ............................................................ 296<br />
pppoe set transport ENABLED/DISABLED .................................................................... 297<br />
pppoe set transport givedns client .................................................................................. 297<br />
pppoe set transport givedns relay................................................................................... 298<br />
pppoe set transport lcpechoevery................................................................................... 299<br />
pppoe set transport lcpmaxconf...................................................................................... 300<br />
pppoe set transport lcpmaxfail ........................................................................................ 300<br />
pppoe set transport lcpmaxterm ..................................................................................... 301<br />
pppoe set transport STATIC_IP/DYNAMIC_IP............................................................... 302<br />
pppoe set transport password......................................................................................... 302<br />
pppoe set transport servicename.................................................................................... 303<br />
pppoe set transport username........................................................................................ 304<br />
pppoe set transport welogin............................................................................................ 305<br />
pppoe show transport ..................................................................................................... 306<br />
CHAPTER 15 VoIP Analogue and Digital access ports ............................................ 309<br />
Introduction ..................................................................................................................... 309<br />
Analog Ports ................................................................................................................... 310<br />
Digital Ports..................................................................................................................... 310<br />
x
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
xi<br />
ISDN BRI Physical Layer ................................................................................................ 311<br />
ISDN Layer 2 - LAPD...................................................................................................... 312<br />
ISDN Layer 3 - Call Control ............................................................................................ 312<br />
Common ......................................................................................................................... 312<br />
Port configuration............................................................................................................ 313<br />
Digit Map......................................................................................................................... 313<br />
Dial Mask ........................................................................................................................ 315<br />
Voice Coder/Decoder...................................................................................................... 315<br />
Voice Quality Management............................................................................................. 317<br />
Volume Gain Control....................................................................................................... 318<br />
G.168 Line Echo Cancellation (8 ms – 32 ms tail length)............................................... 318<br />
Voice Activity Detection (VAD) / Comfort Noise Generation (CNG) ............................... 318<br />
Telecom Tones Management ......................................................................................... 319<br />
Country-specific Telecom Tones .................................................................................... 320<br />
Telecom Tones Customization ....................................................................................... 321<br />
Port enable/disable ......................................................................................................... 322<br />
VoIP EP Command <strong>Reference</strong> ....................................................................................... 323<br />
voip ep CLI commands ................................................................................................... 323<br />
voip ep create ................................................................................................................. 325<br />
voip ep delete.................................................................................................................. 326<br />
voip ep disable ................................................................................................................ 327<br />
voip ep enable................................................................................................................. 327<br />
voip ep list ....................................................................................................................... 328<br />
voip ep set cfwd .............................................................................................................. 328<br />
voip ep set cng................................................................................................................ 330<br />
voip ep set codecs .......................................................................................................... 331<br />
voip ep set country.......................................................................................................... 331<br />
voip ep set dialmask ....................................................................................................... 332<br />
voip ep set dialmode....................................................................................................... 333<br />
voip ep set digitmap........................................................................................................ 334<br />
voip ep set idt-critical ...................................................................................................... 334<br />
voip ep set idt-partial....................................................................................................... 335<br />
voip ep set jitterdelay ...................................................................................................... 336<br />
voip ep set lec................................................................................................................. 336<br />
voip ep set offhook-time.................................................................................................. 337<br />
voip ep set onhook-time.................................................................................................. 338<br />
voip ep set rxgain............................................................................................................ 338<br />
voip ep set txgain............................................................................................................ 339<br />
voip ep set vad................................................................................................................ 339<br />
voip ep show ................................................................................................................... 340<br />
voip ep signaling add ...................................................................................................... 341<br />
voip ep signaling create .................................................................................................. 342<br />
voip ep ignaling delete .................................................................................................... 344<br />
voip ep signaling list........................................................................................................ 344<br />
voip ep signaling remove ................................................................................................ 345<br />
voip ep signaling show.................................................................................................... 345<br />
VoIP Lifeline Command <strong>Reference</strong>................................................................................. 347<br />
voip lifeline CLI commands............................................................................................. 347<br />
voip LIFELINE DISABLE................................................................................................. 347<br />
voip LIFELINE ENABLE.................................................................................................. 347<br />
voip LIFELINE show ....................................................................................................... 348<br />
CHAPTER 16 VoIP SIP ................................................................................................... 349<br />
Introduction ..................................................................................................................... 349<br />
SIP Protocol.................................................................................................................... 349<br />
Protocol Components ..................................................................................................... 350<br />
SIP Messages................................................................................................................. 352<br />
AT-RG613, AT-RG623 and AT-RG656 Call Processes ................................................. 353<br />
Calls Involving Another Terminal .................................................................................... 353<br />
Calls Involving a Terminal and a SIP Endpoint............................................................... 354
VoIP SIP Servers, Users & Forwarding Database.......................................................... 355<br />
Introduction ..................................................................................................................... 355<br />
SIP Servers..................................................................................................................... 356<br />
Users............................................................................................................................... 357<br />
Forwarding Database (FDB)........................................................................................... 359<br />
VoIP SIP Command <strong>Reference</strong> ...................................................................................... 362<br />
VoIP sip protocol CLI commands.................................................................................... 362<br />
voip sip protocol disable.................................................................................................. 362<br />
voip sip protocol enable .................................................................................................. 363<br />
voip sip protocol restart................................................................................................... 363<br />
voip sip protocol set defaultport ...................................................................................... 363<br />
voip sip protocol set EXTENSION .................................................................................. 364<br />
voip sip protocol set NAT................................................................................................ 365<br />
voip sip protocol set NETINTERFACE............................................................................ 365<br />
voip sip protocol set roundtriptime .................................................................................. 366<br />
voip sip protocol set SESSIONEXPIRE .......................................................................... 366<br />
voip sip protocol show..................................................................................................... 366<br />
VoIP SIP Locationserver Command <strong>Reference</strong>.............................................................. 368<br />
voip sip locationserver CLI commands ........................................................................... 368<br />
voip sip locationserver create ......................................................................................... 368<br />
voip sip locationserver delete.......................................................................................... 369<br />
voip sip LOCATIONSERVER list .................................................................................... 369<br />
voip sip locationserver SET MASTER ............................................................................ 370<br />
VoIP SIP Proxyserver Command <strong>Reference</strong> .................................................................. 371<br />
voip sip proxyserver CLI commands............................................................................... 371<br />
voip sip proxyserver create............................................................................................. 371<br />
voip sip PROXYSERVER delete..................................................................................... 372<br />
voip sip PROXYSERVER list .......................................................................................... 372<br />
voip sip PROXYSERVER SET MASTER ....................................................................... 373<br />
VoIP SIP User Command <strong>Reference</strong>.............................................................................. 374<br />
voip sip user CLI commands........................................................................................... 374<br />
voip sip user add............................................................................................................. 374<br />
voip sip user create......................................................................................................... 375<br />
voip sip user delete......................................................................................................... 376<br />
voip sip user list .............................................................................................................. 377<br />
voip sip user remove....................................................................................................... 378<br />
voip sip user show .......................................................................................................... 378<br />
VoIP SIP FDB Command <strong>Reference</strong> .............................................................................. 380<br />
voip sip fdb CLI commands............................................................................................. 380<br />
voip sip fdb create........................................................................................................... 380<br />
voip sip fdb delete........................................................................................................... 381<br />
voip sip fdb list ................................................................................................................ 382<br />
voip sip fdb show ............................................................................................................ 382<br />
CHAPTER 17 VoIP H323................................................................................................. 384<br />
Introduction ..................................................................................................................... 384<br />
H.323 Protocols .............................................................................................................. 384<br />
H.323 Components......................................................................................................... 385<br />
Terminals ........................................................................................................................ 385<br />
Gateways........................................................................................................................ 385<br />
Gatekeepers ................................................................................................................... 385<br />
Multipoint Control Units................................................................................................... 386<br />
Protocols Specified by H.323.......................................................................................... 386<br />
Audio CODEC................................................................................................................. 386<br />
Video CODEC................................................................................................................. 386<br />
H.225 Registration, Admission, and Status .................................................................... 387<br />
H.225 Call Signaling ....................................................................................................... 387<br />
H.245 Control Signaling .................................................................................................. 387<br />
Real-Time Transport Protocol......................................................................................... 387<br />
Real-Time Transport Control Protocol ............................................................................ 387<br />
xii
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
xiii<br />
Terminal Characteristics ................................................................................................. 388<br />
Gateway and Gatekeeper Characteristics ...................................................................... 388<br />
Gateway Characteristics ................................................................................................. 388<br />
Gatekeeper Characteristics ............................................................................................ 389<br />
AT-RG613, AT-RG623 and AT-RG656 Call Processes ................................................. 389<br />
Calls Involving Another Terminal .................................................................................... 389<br />
Calls Involving a Terminal and a H.323 Endpoint ........................................................... 390<br />
VoIP H323 Users ............................................................................................................ 391<br />
Introduction ..................................................................................................................... 391<br />
Users............................................................................................................................... 392<br />
VoIP H323 Command <strong>Reference</strong> ................................................................................... 394<br />
VoIP h323 protocol CLI commands ................................................................................ 394<br />
voip h323 protocol disable .............................................................................................. 394<br />
voip h323 protocol enable............................................................................................... 395<br />
voip H323 protocol set alias............................................................................................ 395<br />
voip h323 protocol set connect ....................................................................................... 396<br />
voip H323 protocol set gatekeeper ................................................................................. 396<br />
voip H323 protocol set netinterface ................................................................................ 397<br />
voip H323 protocol set q931port ..................................................................................... 397<br />
voip H323 protocol set rasport ........................................................................................ 398<br />
voip h323 protocol set registration.................................................................................. 398<br />
voip h323 protocol set response ..................................................................................... 399<br />
voip H323 protocol set secondarygatekeeper................................................................. 399<br />
voip h323 protocol show ................................................................................................. 400<br />
VoIP H323 User Command <strong>Reference</strong>........................................................................... 401<br />
voip H323 user CLI commands....................................................................................... 401<br />
voip h323 user add ......................................................................................................... 401<br />
voip h323 user create ..................................................................................................... 402<br />
voip h323 user delete...................................................................................................... 403<br />
voip h323 user list ........................................................................................................... 403<br />
voip h323 user remove ................................................................................................... 404<br />
voip h323 user show....................................................................................................... 405<br />
VoIP H323 FDB Command <strong>Reference</strong> ........................................................................... 406<br />
voip h323 fdb CLI commands ......................................................................................... 406<br />
voip h323 fdb create ....................................................................................................... 406<br />
voip h323 fdb delete........................................................................................................ 407<br />
voip h323 fdb list............................................................................................................. 407<br />
voip h323 fdb show......................................................................................................... 408<br />
CHAPTER 18 VoIP MGCP ............................................................................................. 409<br />
Introduction ..................................................................................................................... 409<br />
Connections & Endpoints................................................................................................ 409<br />
MGCP Protocol Commands............................................................................................ 411<br />
NotificationRequest......................................................................................................... 411<br />
Notify............................................................................................................................... 411<br />
CreateConnection........................................................................................................... 411<br />
ModifyConnection ........................................................................................................... 412<br />
DeleteConnection ........................................................................................................... 412<br />
AuditEndpoint.................................................................................................................. 412<br />
AuditConnection.............................................................................................................. 413<br />
RestartInProgress........................................................................................................... 413<br />
MGCP Command reference ........................................................................................... 414<br />
MGCP commands........................................................................................................... 414<br />
voip mgcp protocol disable ............................................................................................. 414<br />
voip mgcp protocol enable .............................................................................................. 415<br />
voip mgcp protocol restart............................................................................................... 415<br />
voip mgcp protocol set defaultport .................................................................................. 415<br />
voip mgcp protocol set nat .............................................................................................. 416<br />
voip mgcp protocol set netinterface ................................................................................ 416<br />
voip mgcp protocol set profile ......................................................................................... 417
voip mgcp protocol show ................................................................................................ 418<br />
voip mgcp callagent create ............................................................................................. 418<br />
voip mgcp callagent delete ............................................................................................. 419<br />
voip mgcp callagent list................................................................................................... 419<br />
CHAPTER 19 VoIP QoS and Media ............................................................................. 421<br />
Introduction ..................................................................................................................... 421<br />
QoS................................................................................................................................. 421<br />
Media .............................................................................................................................. 422<br />
VoIP QoS Command <strong>Reference</strong>..................................................................................... 423<br />
VoIP QoS CLI commands............................................................................................... 423<br />
voip qos set dscp ............................................................................................................ 423<br />
voip qos set tos............................................................................................................... 423<br />
voip qos SHOW .............................................................................................................. 424<br />
VoIP Media Command <strong>Reference</strong> .................................................................................. 425<br />
VoIP Media CLI commands ............................................................................................ 425<br />
voip media set portrange ................................................................................................ 425<br />
voip media set rtcp.......................................................................................................... 425<br />
voip MEDIA SET SESSIONTIMEOUT............................................................................ 426<br />
voip MEDIA SHOW......................................................................................................... 426<br />
CHAPTER 20 ZTC............................................................................................................ 429<br />
Introduction ..................................................................................................................... 429<br />
Functional blocks ............................................................................................................ 429<br />
ZTC Network Architecture............................................................................................... 430<br />
ZTC Client....................................................................................................................... 431<br />
Storing Unit Configuration............................................................................................... 432<br />
Pull-at-startup.................................................................................................................. 432<br />
Scheduled-pull ................................................................................................................ 433<br />
ZTC Command reference ............................................................................................... 435<br />
ZtcClient commands ....................................................................................................... 435<br />
ztcclient enable dynamic................................................................................................. 435<br />
ztcclient enable static...................................................................................................... 436<br />
ztcclient disable............................................................................................................... 436<br />
ztcclient show.................................................................................................................. 436<br />
ztcclient set ..................................................................................................................... 437<br />
ztcclient update ............................................................................................................... 437<br />
CHAPTER 21 <strong>Software</strong> Update ..................................................................................... 438<br />
Introduction ..................................................................................................................... 438<br />
FTP server ...................................................................................................................... 439<br />
TFTP server.................................................................................................................... 439<br />
Windows Loader.......................................................................................................... 440<br />
SwUpdate module........................................................................................................... 441<br />
Plug-and-play.................................................................................................................. 444<br />
xiv
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
xv<br />
List of figures<br />
Figure 1. IP Packet overview........................................................................................................................... 38<br />
Figure 2. Tagged frame format according to IEEE 802.3ac standard............................................................. 54<br />
Figure 3. VLAN and IP layer architecture (the greyed area surrounds the entities always available in the<br />
system) ..................................................................................................................................................... 58<br />
Figure 4. IP interface over VLAN - basic steps ............................................................................................... 59<br />
Figure 5. IP packet or datagram. ..................................................................................................................... 73<br />
Figure 6. Subdivision of the 32 bits of an Internet address into network and host fields for class A, B and C<br />
networks. .................................................................................................................................................. 75<br />
Figure 7. Security modules on AT-RG6xx Residential Gateway series. ....................................................... 138<br />
Figure 8. Security interfaces on AT-RG6xx Residential Gateway series. ..................................................... 139<br />
Figure 9. Firewall module and related objects............................................................................................... 143<br />
Figure 10. Address Conservation using NAT ................................................................................................ 182<br />
Figure 11. External access to an FTP server ................................................................................................ 185<br />
Figure 12. Domain Name System ................................................................................................................. 268<br />
Figure 13. PPP is used by Internet Service Providers (ISPs) to allow dial-up users to connect to the Internet.<br />
................................................................................................................................................................ 287<br />
Figure 14. ISDN Basic Access. ..................................................................................................................... 311<br />
Figure 15. VoIP subsystem configuration - basic steps. ............................................................................... 312<br />
Figure 16. Phone --> AT-RG613/RG623 (A) --> AT-RG613/RG623 (B) --> Phone................................ 354<br />
Figure 17. Phone --> AT-RG613/RG623 (A) --> SIP IP Phone................................................................. 355<br />
Figure 18. VoIP subsystem configuration - basic steps. ............................................................................... 356<br />
Figure 19. H.323 Terminals on a Packet Network......................................................................................... 385<br />
Figure 20. Phone --> AT-RG613/RG623 (A) --> AT-RG613/RG623 (B) --> Phone................................ 390<br />
Figure 21. Phone --> AT-RG613/RG623 (A) --> H323 IP Phone.............................................................. 391<br />
Figure 22. VoIP H323 subsystem configuration - basic steps....................................................................... 392<br />
Figure 23. ZTC network architecture............................................................................................................. 430<br />
Figure 24. Pull-at-Startup ZTC phase........................................................................................................... 433<br />
Figure 25. Scheduled-pull ZTC phase.......................................................................................................... 434<br />
Figure 26. Access to the Residential Gateway TFTP server......................................................................... 440<br />
Figure 27. The Windows Loader................................................................................................................ 441<br />
Figure 28. DHCPCONF like SwUpdate operation mode............................................................................... 442
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
Preface<br />
Purpose of this <strong>Manual</strong><br />
This manual is the complete reference to the configuration, management and<br />
operation of the AT-RG613, AT-RG623 and AT-RG656 Residential Gateway, and<br />
includes detailed descriptions of all management commands.<br />
AT-RG613, AT-RG623 and AT-RG656 are Customer Promise Equipment (CPE)<br />
designed to provide data and VoIP access for multiple users in Small Office/Home<br />
Office (SOHO), Small to Medium Enterprise (SME), Branch Offices or customer<br />
residence, wanting very fast download combining broadband access with Internet<br />
telephony services.<br />
Using these intelligent equipment the customer can use broadband integrated<br />
services for telephony, Internet and Internet Video.<br />
The VoIP residential gateway, fitted with a number of ports for interconnection of<br />
traditional domestic appliances (telephone, fax, personal computer), acts as an<br />
adapter for the conversion and management of all the necessary protocols for using<br />
advanced multimedia services:<br />
• Low cost telephony using Internet protocol (VoIP)<br />
• Fast Internet navigation<br />
• Video on demand<br />
• Interactive services<br />
The main features of the device are listed below:<br />
• one 10/100 BaseT Ethernet port for uplink (WAN port)<br />
• three 10/100 BaseT Ethernet ports for connecting user equipment (pc, printer, etc.)<br />
• two analog VoIP ports for connecting two analog telephones or faxes (AT-<br />
RG613TX(J) models) plus one analogue FXO port for connecting to PBX or to<br />
Local Exchange (AT-RG613TXJ model only)<br />
• two digital VoIP ports for connecting up to 8 digital telephones or faxes (AT-<br />
RG623TX model)<br />
• Switching function using the same analogue terminal from VoIP to PSTN
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong><br />
xvii<br />
• IEEE 802.1q tag based VLAN<br />
• QoS packet prioritization support: per port, 802.1p and DiffServ based<br />
• Programmable rate limiting, ingress port, egress port, per port basis.<br />
• IGMP v1/v2 snooping for multicast packet filtering<br />
• PPPOE<br />
• DHCP Server and Relay<br />
• DNS Relay<br />
• Compliant with SIP protocol and H323 v2 protocol<br />
• TFTP - Trivial File Transfer Protocol support<br />
• NTP - Network Time Protocol support<br />
Configuration and management of the device through:<br />
• Serial interface (CLI)<br />
• Telnet<br />
• SNMP<br />
• Zero Touch Configuration<br />
Moreover AT-RG613, AT-RG623 and AT-RG656 integrate advanced router features<br />
like:<br />
• Firewall<br />
• Dynamic Port Opening<br />
• Attack Detection and Blocking<br />
• Advanced Network Address Translation (NAT)<br />
Intended Audience<br />
This manual is intended for the system administrator, network manager or<br />
communications technician who will configure and maintain AT-RG613, AT-RG623<br />
and AT-RG656, or who manages a network of AT-RG613, AT-RG623 and AT-RG656<br />
Residential Gateways.<br />
It is assumed that the reader is familiar with:<br />
• The topology of the network in which the Residential Gateway is to be used.<br />
• Basic principles of computer networking, protocols and routing, and interfaces.<br />
• Administration and operation of a computer network.<br />
Most of the commands described in this manual require superuser privilege and can<br />
only be entered from a terminal or port, which has been logged with superuser<br />
privilege.<br />
<br />
For further information please refer to the “SNMP <strong>Reference</strong> <strong>Manual</strong>”
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 1<br />
Standards and Protocols<br />
Supported Standards and Protocols<br />
Table 1 lists the protocols and standards supported by the AT-RG613, AT-RG623<br />
and AT-RG656 Residential Gateway and the references where these protocols and<br />
standards are defined.<br />
Protocol/standard<br />
<strong>Reference</strong><br />
ARP RFCs 826, 925.<br />
Assigned Numbers RFC 1700.<br />
DHCP RFCs 2131, 2132.<br />
DNS RFCs 1034, 1035<br />
H.323 ITU H.323, ITU H.225, ITU H.245<br />
ICMP RFCs 792, 950.<br />
IEEE 802.2 ANSI/IEEE Std 802.2-1985.<br />
IEEE 802.3<br />
IGMP RFCs 2236, 1112<br />
ANSI/IEEE Std 802.3-1985, 802.3a, b, c, e-1988.<br />
IP RFCs 791, 821, 950, 951, 1009, 1055, 1122, 1144,<br />
1349, 1542, 1812, 1858.<br />
IP addressing RFC 1597.<br />
ISDN<br />
ITU-T I.430 (Basic Rate Access)<br />
ETSI ETS 300 402-1 (Layer 2)<br />
ETSI ETS 300 403-1 (Layer 3)<br />
NTP RFCs 958, 1305, 1510.<br />
PPP over Ethernet RFC 2516<br />
RTP-RTCP RFC 1889, ITU G.711, ITU G.723, ITU G.729<br />
SDP RFC 2327<br />
SIP RFC 2543<br />
SNMP, MIBs RFCs 1155, 1157, 1213, 1239, 1315, 1398, 1493,<br />
1514, 1573, 2233.<br />
TCP RFC 793.<br />
Telnet RFCs 854–858, 932 1091.<br />
TFTP RFC 1350.<br />
UDP RFC 768.<br />
VLAN IEEE Std 802.1Q<br />
Table 1. Protocols and standards supported by AT-RG613, AT-RG623 and AT-<br />
RG656 Residential Gateway.<br />
Obtaining Copies of Internet Protocols and Standards<br />
The Internet Protocols are defined in Requests For Comments (RFCs). RFCs are<br />
developed and published under the auspices of the Internet Engineering Steering
2 Preface<br />
Group (IESG) of the Internet Engineering Task Force (IETF). For more information<br />
about the IESG and IETF, visit the IETF web site at http://www.ietf.org/.<br />
For more information about RFCs and Internet Drafts (the starting point for RFCs),<br />
visit the RFC Editor web site at http://www.rfc-editor.org/. This site has information<br />
about the RFC standards process, archives of RFCs and current Internet Drafts, links<br />
to RFC indexes and search engines, and a list of other RFC repositories.<br />
RFCs can be obtained electronically from many RFC repositories, mail servers,<br />
World Wide Web (WWW), Gopher or WAIS sites. A good starting point for finding<br />
the nearest RFC repository is to point your Web browser at http://www.isi.edu/innotes/rfc-retrieval.txt.<br />
Background Reading<br />
For an introduction to the Internet Protocols refer to:<br />
DDN Protocol Handbook, Elizabeth J. Feinler, 1991, DDN Network Information Center,<br />
SRI International, 333 Ravenswood Avenue, Menlo Park, CA 94025, USA. Email:<br />
nic@nic.ddn.mil.<br />
Internetworking with TCP/IP — Volume I: Principles, protocols and architecture<br />
(2nd Edition), Douglas E. Comer, 1991, Prentice-Hall International, Inc., New Jersey.<br />
ISBN 0-13-474321-0.<br />
Internetworking with TCP/IP — Volume II: Design, implementation, and internals,<br />
Douglas E. Comer and David L. Stevens, 1991, Prentice-Hall International, Inc., New<br />
Jersey. ISBN 0-13-472242-6.<br />
Internetworking with TCP/IP — Volume III: Client-server programming and<br />
applications, Douglas E. Comer and David L. Stevens, 1993, Prentice-Hall<br />
International, Inc., New Jersey. ISBN 0-13-474222-2.<br />
For a description of layered protocols refer to:<br />
Computer networks (2nd Edition), Andrew S. Tanenbaum, 1989, Prentice-Hall<br />
International, Inc., New Jersey. ISBN 0-13-162959-0.<br />
For an introduction to PPP refer to:<br />
Using and Managing PPP, Andrew Sun, O’Reilly; ISBN: 1565923219; (March 1999).<br />
For an introduction to network management refer to:<br />
The simple book — An introduction to management of TCP/IP-based Internets,<br />
Marshall T. Rose, 1991, Prentice-Hall International, Inc. ISBN 013812611-9.<br />
For an introduction to VOIP refer to:<br />
Internet Communications Using SIP, Henry Sinnreich, Alan B. Johnston.<br />
SIP: Understanding the Session Initiation Protocol, Alan B. Johnston.<br />
IP Telephony with H.323: Architectures for Unified Networks and Integrated Services,<br />
Vineet Kumar, Markku Korpi, Senthil Sengodan.<br />
Publicly Accessible Documents<br />
<strong>Allied</strong> Telesyn maintains an online archive of documents and files that customers<br />
can access via the World Wide Web or via anonymous FTP. For WWW access, point<br />
your Web browser at http://www.alliedtelesyn.com/.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 3<br />
Conventions used in command definitions<br />
A number of symbols, typographic and stylist conventions are used throughout this<br />
manual to help user in learning and to specify command syntax (see Table 2).<br />
This typeface<br />
ALL CAPS<br />
Is used for<br />
Command keywords to be typed as shown. Generally,<br />
keywords may be abbreviated to the shortest string that is<br />
unambiguous within the current context.<br />
italics<br />
< ><br />
[ ]<br />
{ | | }<br />
Italics are used for denoting a user-specified value.<br />
Angle brackets denote compulsory command-line<br />
parameters or values.<br />
Square brackets denote optional command-line<br />
parameters or values..<br />
Curly brackets, in conjunction with vertical<br />
bars, denote a set of alternative commandline<br />
parameters or values.<br />
Table 2. Typographic conventions used in this manual.<br />
Commands are described under Command <strong>Reference</strong> within the section to which they<br />
apply.
4 Chapter 1 – System Management<br />
Chapter 1<br />
System Management<br />
This chapter provides some basic instructions about how login to the CLI and the<br />
different types of user access.<br />
Logging into the CLI<br />
Itʹs possible to use two different connections in order to access the Command Line<br />
Interface:<br />
Serial Connection<br />
Itʹs possible to access the CLI interface through a serial connection using a terminal<br />
emulator program like, for example, Windows Hyper Terminal with the following<br />
default parameters:<br />
• bit rate: 38400 bps<br />
• data bits: 8<br />
• parity: none<br />
• stop bits: 1<br />
• flow control: none<br />
TCP/IP connection<br />
Itʹs possible to access the CLI interface through a TCP/IP connection by opening a<br />
Telnet session with the following default parameters:<br />
• ip address: 192.168.1.1 (factory default)<br />
• telnet port: 23<br />
As soon the connection is established, a login and password are requested.<br />
The following default values give superuser access to the CLI commands and must<br />
be used only by administrators to configure the system and to create user access<br />
with restricted privileges:<br />
login: manager
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 5<br />
password: friend<br />
Command Line Interface and Console<br />
The CLI is the Command Line Interface used in the AT-RG613, AT-RG623 and AT-<br />
RG656 Residential Gateway to configure and manage the unit.<br />
It provides full access to the following system modules:<br />
console<br />
dhcp client<br />
dhcp relay<br />
dhcp server<br />
dns client<br />
dns relay<br />
ethernet<br />
firewall<br />
igmp<br />
ip<br />
nat<br />
pppoe<br />
security<br />
sntp client<br />
switch<br />
system<br />
transport<br />
user<br />
vlan<br />
voip<br />
webserver<br />
ztc client<br />
Webserver<br />
The AT-RG613, AT-RG623 and AT-RG656 are designed to provide the ability to<br />
configure the system using a Graphical User Interface (GUI) instead of - or together<br />
with - the Command Line Interface (for future release).<br />
<br />
To keep the system design open to these future improvements, all CLI<br />
commands are actually processed by the webserver module that acts like a<br />
parsing and pre-processing layer between the user and the software module the<br />
command refers to.<br />
For this reason, syntax errors due to incorrect CLI commands, typically report<br />
the webserver source as reference for the cause of the error.<br />
<br />
Webserver commands are accessible from the Command Line Interface for users<br />
with superuser access permission.<br />
Because the webserver is still under development it is strongly discouraged to<br />
make any changes to this module because this could lead to system instability<br />
or could block access to the command line.
6 Chapter 1 – System Management<br />
File System<br />
The AT-RG613, AT-RG623 and AT-RG656 application processes require that<br />
configuration information be accessible when they start up, and that configuration<br />
changes are retained for future operation.<br />
To fulfill the above requirements, two processes are provided, namely the ‘In Store<br />
File System’ and the ‘FLASH File System’. These two processes are referred to as isfs<br />
and flashfs, respectively, in this document.<br />
The two file systems provide a standard file interface to application processes.<br />
The isfs provides for volatile, run-time file storage; whereas the flashfs provides nonvolatile<br />
file storage.<br />
The critical period for such a system occurs when the flash memory itself is being<br />
updated, as a power failure could result in data corruption and hence an inoperable<br />
system.<br />
In the AT-RG613, AT-RG623 and AT-RG656, flash memory is divided into three<br />
main areas:<br />
BOOT code<br />
System configuration information<br />
Run-time images and their configuration information<br />
Boot code<br />
The Boot ROM program normally resides in flashfs, in a reserved portion of the first<br />
flash device. This code is run when the system is first booted and provides self-test<br />
code as well as the ability to load the main run-time images.<br />
The Boot ROM area is not normally accessible for either reading or writing by flashfs,<br />
so is rarely, if ever, rewritten.<br />
System configuration information<br />
System configuration information includes information such as the system MAC<br />
address. This information is rarely, if ever, updated once it has been set.<br />
Run-time images<br />
The flashfs file system provides permanent storage of files and is not normally used<br />
other than at start of day or when re-writing the flash. In addition to configuration<br />
files, flashfs stores the software image, which is loaded by the BOOT ROM after<br />
system restart.<br />
After system restart and during system initialization, flashfs files are copied into isfs<br />
so that they are accessible by application processes. Typically, applications use the<br />
isfs files to store their configuration data. Changes made to the configuration can be<br />
written back into isfs, and subsequently flashfs, with the config save command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 7<br />
During a flashsfs update, all configuration files in isfs are written back to flashfs<br />
irrespective of whether they have changed or not. Normally the software image is<br />
not rewritten.<br />
The flashfs configuration files can be considered the ‘master’ copies, and the isfs files<br />
the runtime copies. If the isfs copies are written back to the flashfs, the current<br />
settings will be will be preserved.<br />
<br />
The Command Line Interface doesnʹt allow access to the flashfs filing system or<br />
to the isfs in store file system because this is not required in typical user<br />
situations.<br />
The Flash file system flashfs, in store file system isfs and special debug functions<br />
can be access through a nested command line called the console.<br />
The console command line can be used only if you have appropriate access<br />
permissions and is typically hidden from the user. It is used only for specific<br />
maintenance purposes.<br />
This Administration <strong>Manual</strong> doesnʹt cover console commands.<br />
Access permissions to the CLI<br />
There are three access level options for CLI users that provide different levels of<br />
allowed operations:<br />
default user - can use CLI commands. Cannot access to console commands.<br />
engineer user - can use CLI commands. Can access to limited console commands.<br />
super user - can use CLI commands. Can access the full console command set. Can<br />
also set up user login accounts, save backup configuration and restore factory<br />
settings.<br />
To create new user accounts, use the system add user or system add login commands.<br />
The accounts created by these commands default to low privileges.<br />
To change user privileges, use the system set user access or system set login access<br />
commands.<br />
To list the current user or login accounts, use the system list user or system list login<br />
commands, respectively.<br />
System Configuration Management<br />
The original way to manage the system configuration in AT-RG600 series was to<br />
save the information in the im.conf file (Information Model). The Information<br />
Model is written in ASCII code but it is not easily readable for the following reasons:<br />
• It has a tree structure organized in nodes and attributes.
8 Chapter 1 – System Management<br />
• It reports all the nodes and attributes present in the configuration, including<br />
all the attributes that are set to the default values. (On average an im.conf<br />
file is composed of five hundred rows but it can be much longer.<br />
The following picture shows a part of a generic im.conf file.<br />
# Information Model configuration file<br />
version 4<br />
N ImGwaAdmins ImGwaAdmins<br />
N ImGwaAdmin ImGwaAdmins.gwa_admin<br />
A Profile none<br />
N ImGwaSips ImGwaSips<br />
N ImGwaSip ImGwaSips.gwa<br />
A ControlProtocol SIP<br />
A Enable true<br />
A Authentication proxy<br />
A DefaultPort 5060<br />
A KeepAlive disabled<br />
A KeepAlive_Time 300<br />
A NAT none<br />
A NetInterface ip0<br />
A RTT 500<br />
A SE 1800<br />
A Support none<br />
A TimerB 32<br />
N ImGwaSipLSs ImGwaSips.gwa.ImGwaSipLSs<br />
N ImGwaSipLS ImGwaSips.gwa.ImGwaSipLSs.myloc<br />
A Contact 192.168.1.3<br />
A Master false<br />
N ImGwaSipLS ImGwaSips.gwa.ImGwaSipLSs.myloc2<br />
A Contact 192.168.1.4<br />
A Master false<br />
N ImGwaSipPSs ImGwaSips.gwa.ImGwaSipPSs<br />
N ImGwaSipPS ImGwaSips.gwa.ImGwaSipPSs.mypx<br />
A Contact 192.168.1.100<br />
A Master false<br />
N ImGwaSipPS ImGwaSips.gwa.ImGwaSipPSs.mypx2<br />
A Contact 192.168.1.101<br />
A Master false<br />
……………………<br />
Starting with version 2-0-2, the concept of “configuration files” and the features to<br />
manage them has been introduced.<br />
A configuration file is a text file containing the list of commands that have to be<br />
executed in order to move the device from the default to the desired configuration.<br />
The list of the command is more readable that the im.conf format.<br />
AT-RG600 can store up to 8 configuration file. One of them can be set as “boot<br />
configuration file”. The boot configuration file is loaded after the startup (See<br />
system config set command)<br />
It is possible download a configuration using the ftp or the tftp protocol (See<br />
system config get command)<br />
It is also possible create a configuration file on the device using the command<br />
system config create.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 9<br />
<br />
Please note that the System Config Management will be completed in a future<br />
version. Now the configuration file created on the device is created in the old<br />
im.conf format. AT-RG600 is able to manage completely both the formats.<br />
System Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage the System module.<br />
System CLI commands<br />
The table below lists the system commands provided by the CLI:<br />
Command<br />
SYSTEM ADD USER<br />
SYSTEM ADD LOGIN<br />
SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG GET<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
SYSTEM DELETE LOGIN<br />
SYSTEM DELETE USER<br />
SYSTEM INFO<br />
SYSTEM LIST ERRORS<br />
SYSTEM LIST USERS<br />
SYSTEM LIST LOGINS<br />
SYSTEM LOG<br />
SYSTEM LOG ENABLE|DISABLE<br />
SYSTEM LOG LIST<br />
SYSTEM NAME<br />
SYSTEM RESTART<br />
SYSTEM SET LOGIN ACCESS<br />
SYSTEM SET LOGIN MAYCONFIGURE<br />
SYSTEM SET LOGIN MAYDIALIN
10 Chapter 1 – System Management<br />
SYSTEM SET USER ACCESS<br />
SYSTEM SET USER MAYCONFIGURE<br />
SYSTEM SET USER MAYDIALIN<br />
<br />
Please note that the following commands, used in previous versions of the<br />
software, have now been dismissed:<br />
SYSTEM CONFIG BACKUP<br />
SYSTEM CONFIG RESTORE {BACKUP|[filename]}<br />
SYSTEM CONFIG SAVE<br />
SYSTEM ADD USER<br />
Syntax SYSTEM ADD USER [ʺcommentʺ]<br />
Description This command adds a user (typically a PPP user) to the system. Only a Super user<br />
can use this command.<br />
Default Setting The default settings in the table below are applied to new accounts that are added<br />
using the system add user command. (A different set of defaults are applied to a new<br />
account added using the SYSTEM ADD LOGIN command.)<br />
Option<br />
dialin to the system<br />
login to the system<br />
configuration permissions<br />
access permissions<br />
Default Setting<br />
enabled<br />
disabled<br />
disabled<br />
default user<br />
Options The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
name<br />
comment<br />
A unique user name made up of more than<br />
one character that identifies an individual<br />
user and lets the user access the system.<br />
An optional comment about the user that is<br />
displayed when you type the commands<br />
system list users and system list logins.<br />
N/A<br />
No comment<br />
added<br />
Example --> system add user ckearns ["Typical user"]<br />
See also SYSTEM SET USER ACCESS<br />
SYSTEM SET USER MAYDIALIN<br />
SYSTEM SET USER MAYCONFIGURE<br />
SYSTEM LIST USERS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 11<br />
SYSTEM DELETE USER<br />
SYSTEM ADD LOGIN<br />
Syntax SYSTEM ADD LOGIN [ʺcommentʺ]<br />
Description This command adds a user to the system. Only a Superuser can use this command.<br />
Default setting The default settings in the table below are applied to new accounts that are added<br />
using the system add login command. (A different set of defaults are applied to a new<br />
account added using the SYSTEM ADD USER command.)<br />
Option<br />
dialin to the system<br />
login to the system<br />
configuration permissions<br />
access permissions<br />
Default Setting<br />
disabled<br />
enabled<br />
enabled<br />
default user<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
name<br />
comment<br />
A unique login name made up of more<br />
than one character that identifies an<br />
individual user and lets the user access<br />
the system.<br />
An optional comment about the user<br />
that is displayed when you type the<br />
commands SYSTEM LIST USERS and<br />
SYSTEM LIST LOGINS.<br />
N/A<br />
Blank (No<br />
comment added)<br />
Example --> system add login ckearns "temporary contractor"<br />
See also SYSTEM DELETE LOGIN<br />
SYSTEM LIST LOGINS<br />
SYSTEM CONFIG CREATE<br />
Syntax SYSTEM CONFIG CREATE <br />
Description This commands is used to create a configuration file named , containing<br />
the actual configuration of the device and to save it into the flash.<br />
The created configuration file contains all the commands needed to move the device<br />
from the default configuration to the run-time configuration.
12 Chapter 1 – System Management<br />
It is possible to create at least eight configuration files, but when a configuration file<br />
is created using a filename that already exists, the new one will overwrite the old<br />
one even if it is the boot configuration file.<br />
Example --> system config create myfile.cfg<br />
See also SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG GET<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
<br />
Please note that the System Config Management will be completed in a future<br />
version. Now the configuration file created on the device is created in the old<br />
im.conf format. AT-RG600 is able to manage completely both the formats.<br />
SYSTEM CONFIG DELETE<br />
Syntax SYSTEM CONFIG DELETE <br />
Description Delete the configuration file named from the flash. It is not possible to<br />
delete the boot configuration file, though.<br />
Example --> system config delete myfile.cfg<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG GET<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
SYSTEM CONFIG GET<br />
Syntax SYSTEM CONFIG GET <br />
Description The command retrieves a configuration file from a remote TFTP or FTP server.<br />
If the retrieved configuration file has the same filename as an existing file, the new<br />
file will overwrite the old one even if it is the boot configuration file.<br />
Options It is possible to specify in the parameter the remote filename, the server IP<br />
address or hostname and the protocol used in the url; accepted formats are in fact:<br />
• tftp://host:port/path/filename<br />
• ftp://user:password@host:port/path/filename<br />
where:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 13<br />
• host = server where the TFTP or FTP server is running. It can be a hostname or an<br />
Ip address;<br />
• port = port used by the TFTP or FTP server;<br />
• Path = path from the TFTP or FTP server root directory to the desired position;<br />
• user:password = user and password must be used to login on a FTP server.<br />
Example --> system config get tftp://192.168.1.100/rg600/myconf.cfg<br />
Retrieves the configuration file named myconf.cfg from the TFTP server<br />
192.168.1.100, in the directory rg600, and saves it into the flash memory.<br />
-->system config get tftp://tftp.atkk.com/rg600/myconf.cfg<br />
Retrieves the configuration file named myconf.cfg from the TFTP server<br />
tftp.atkk.com.<br />
--> system config get ftp://guest:guest@ftp.atkk.it/my.cfg<br />
Retrieves the configuration file named my.cfg from the FTP server ftp.atkk.it. User<br />
“guest” and password “guest” are used to log on the FTP server.<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
SYSTEM CONFIG LIST<br />
Syntax SYSTEM CONFIG LIST<br />
Description List all the configuration files present in memory.<br />
Example --> system config list<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
SYSTEM CONFIG RESTORE FACTORY<br />
Syntax SYSTEM CONFIG RESTORE FACTORY<br />
Description Restores the factory configuration from the //isfs/im.conf.factory file. Only Super<br />
users can use this command. The factory configuration is immediately restored. No<br />
device reboot is needed.
14 Chapter 1 – System Management<br />
Example --> system config restore factory<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG GET<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG SET<br />
SYSTEM CONFIG SHOW<br />
<br />
Another safet way to restore the default configuration is to exec the following<br />
procedure:<br />
system config set factory<br />
system config restart<br />
SYSTEM CONFIG SET<br />
Syntax SYSTEM CONFIG SET {|FACTORY|NONE}<br />
Description The command sets one of the configuration files as the “boot configuration file”.<br />
The configuration contained in this configuration file in not loaded immediately but<br />
it is loaded after the reboot of the device.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
NONE<br />
FACTORY<br />
AT-RG600 is set with only the default<br />
vlan and ip0 interface with a static IP<br />
address set to 192.168.1.1.<br />
AT-RG600 is set with only the default<br />
vlan and ip0 interface with a dynamic IP<br />
address. The DHCP Discovery provides<br />
and requires all the options needed for<br />
the software update / ztc feature<br />
NA<br />
NA<br />
The indicated file NA<br />
Example --> system config set myconf.cfg<br />
Sets the configuration file named myconf.cfg as boot configuration file<br />
--> system config set factory<br />
No configuration files are set as boot configuration file. After the restart the device<br />
will be configured as factory default.<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG GET
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 15<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SHOW<br />
SYSTEM CONFIG SHOW<br />
Syntax SYSTEM CONFIG SHOW {}<br />
Description The command shows the boot configuration file set on the device. If a filename is<br />
specified, the command shows the contents of the specified configuration file.<br />
Options The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
<br />
The indicated file<br />
Example --> system config show myconf.cfg<br />
Displays on the CLI the contents of the configuration file myconf.cfg present in flash<br />
memory.<br />
See also SYSTEM CONFIG CREATE<br />
SYSTEM CONFIG DELETE<br />
SYSTEM CONFIG GET<br />
SYSTEM CONFIG LIST<br />
SYSTEM CONFIG RESTORE FACTORY<br />
SYSTEM CONFIG SET<br />
SYSTEM DELETE LOGIN<br />
Sy/ntax SYSTEM DELETE LOGIN <br />
Description This command deletes a user that has been added to the system using the SYSTEM<br />
ADD LOGIN command. Only a Super user can use this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Description Default value Option<br />
name The name of an existing user. N/A<br />
Example --> system delete login ckearns<br />
See also SYSTEM ADD LOGIN
16 Chapter 1 – System Management<br />
SYSTEM DELETE USER<br />
Syntax SYSTEM DELETE USER <br />
Description This command deletes a user that has been added to the system using the SYSTEM<br />
ADD USER command or the SYSTEM ADD LOGIN command. Only a Super user<br />
can use this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
Example --> system delete user ckearns<br />
See also SYSTEM ADD USER<br />
SYSTEM ADD LOGIN<br />
SYSTEM INFO<br />
Syntax SYSTEM INFO<br />
Description This command displays the vendor ID, URL, base MAC address and hardware and<br />
software version details of the current Residential Gateway system.<br />
Example --> system info<br />
Global System Configuration:<br />
Vendor: <strong>Allied</strong> <strong>Telesis</strong> K.K.<br />
URL: http://www.allied-telesis.co.jp/<br />
MAC address: 00:0d:da:00:05:fe<br />
Hardware ver: RG613TX A2<br />
<strong>Software</strong> ver: 2-0-1_22<br />
Recovery ver: 1-2-2_2<br />
Build type: RELEASE<br />
--><br />
System Name:<br />
System Location:<br />
System Contact:<br />
SYSTEM LIST ERRORS<br />
Syntax SYSTEM LIST ERRORS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 17<br />
Description This command displays a system error log. The error log contains the following<br />
information:<br />
• the time (in minutes) that an error occured, calculated from the start of your login<br />
session<br />
• the module that was affected by the error<br />
• a brief description of the error itself<br />
Example --> system list errors<br />
Error log:<br />
When | Who | What<br />
------------|------------|-------------------------------------------------<br />
104 | webserver | webserver:Failed to create node type 'ImRfc1483'<br />
104 | webserver | webserver:Invalid argument:Failed to open port<br />
a4 (may already be in use, or invalid port name)<br />
---------------------------------------------------------------------------<br />
See also SYSTEM LIST USERS<br />
SYSTEM LIST LOGINS<br />
SYSTEM LIST OPENFILES<br />
Syntax SYSTEM LIST OPENFILES <br />
Description This command allows you to display low-level debug information about specific<br />
open file handles.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
The name of a file which has open file handles<br />
associated with it.<br />
N/A<br />
Example --> system list openfiles bun<br />
qid devuse appuse colour flags lasterrno<br />
console 0000004b 00000000 00400000 3 0<br />
console 00000027 00000000 00400000 5 0<br />
console 00000003 00000000 00400000 5 0<br />
See also SYSTEM LOG ENABLE|DISABLE<br />
SYSTEM LIST USERS<br />
Syntax SYSTEM LIST USERS<br />
Description This command displays a list of users and logins added to the system using the<br />
SYSTEM ADD USER and SYSTEM ADD LOGIN commands. The same information<br />
is displayed by the SYSTEM LIST LOGINS command.<br />
The list contains the following information:
18 Chapter 1 – System Management<br />
• user ID number<br />
• user name<br />
• configuration permissions (enabled or disabled)<br />
• dialin permissions (enabled or disabled)<br />
• access level (default, engineer or super user)<br />
• comment (any comments that were included when the user was added to the<br />
system)<br />
Example --> system list users<br />
Users:<br />
May May Access<br />
ID | Name | Conf. | Dialin | Level | Comment<br />
-----|------------|----------|----------|------------|---------------------<br />
1 | admin | ENABLED | disabled | superuser | Default admin user<br />
---------------------------------------------------------------------------<br />
See also SYSTEM LIST ERRORS<br />
SYSTEM LIST LOGINS<br />
SYSTEM LIST LOGINS<br />
Syntax SYSTEM LIST LOGINS<br />
Description This command displays a list of logins and users added to the system using the<br />
SYSTEM ADD LOGIN and SYSTEM ADD USER commands. The same information<br />
is displayed by the SYSTEM LIST USERS command.<br />
The list contains the following information:<br />
• user ID number<br />
• user name<br />
• configuration permissions (enabled or disabled)<br />
• dial in permissions (enabled or disabled)<br />
• access level (default, engineer or super user)<br />
• comment (any comments that were included when the user was added to the<br />
system)<br />
Example --> system list logins<br />
Users:<br />
May May Access<br />
ID | Name | Conf. | Dialin | Level | Comment<br />
-----|------------|----------|----------|------------|--------------------<br />
1 | admin | ENABLED | disabled | superuser | Default admin user<br />
--------------------------------------------------------------------------<br />
See also SYSTEM LIST ERRORS<br />
SYSTEM LIST USERS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 19<br />
SYSTEM LOG<br />
Syntax SYSTEM LOG {NOTHING|WARNINGS|INFO|TRACE|ENTRYEXIT|ALL}<br />
Description This command sets the level of output that is displayed by the CLI for various<br />
modules. Setting a level also implicitly displays the level(s) below it.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
NOTHING No extra output is displayed. N/A<br />
WARNINGS Non-fatal errors are displayed. N/A<br />
INFO<br />
TRACE<br />
ENTRYEXIT<br />
ALL<br />
Certain program messages are displayed.<br />
Also displays the values for the warnings<br />
option.<br />
Detailed trace output is displayed. Also<br />
displays the values for info and warnings<br />
options.<br />
A message is displayed every time a<br />
function call is entered or left. Also displays<br />
the values for trace, info and warnings<br />
options.<br />
All output is displayed. Also displays the<br />
values for entryexit, trace, info and warnings<br />
options.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> system log all<br />
SYSTEM LOG ENABLE|DISABLE<br />
Syntax SYSTEM LOG {ENABLE|DISABLE} RIP {ERRORS|RX|TX}<br />
SYSTEM LOG {ENABLE|DISABLE} IP {ICMP|RAWIP|UDP|TCP|ARP|SOCKET}<br />
Description This command enables/disables the tracing support output that is displayed by the<br />
CLI for a specific module and module category. The command is used for<br />
debugging purposes. The available values for module and category are displayed<br />
by the SYSTEM LOG LIST command. The current list of supported modules is RIP<br />
and IP.<br />
Each individual module has its own specific module category (see Examples). The<br />
output produced when a particular option is enabled depends on that option, and<br />
on the trace statements in the module which are executed. The general purpose of<br />
this tracing is to:<br />
• show how data packets pass through the system
20 Chapter 1 – System Management<br />
• demonstrate how packets are processed and what they contain<br />
• display any error conditions that occur<br />
•<br />
For example ip rawip tracing shows that an IP packet has been received, sent or<br />
discarded due to an error. Brief details of the packet are displayed to identify it.<br />
The RIP and IP modules provide separate categories which are enabled and<br />
disabled independently. For example, if you enable ip rawip, it does not affect ip udp,<br />
and so on.<br />
To display a list of modules and categories and their enable/disable status, see<br />
SYSTEM LOG LIST.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables tracing support output for a<br />
specified specific module and module<br />
category.<br />
Disables tracing support output for a<br />
specified specific module and module<br />
category.<br />
disable<br />
Examples RIP<br />
--> system log enable rip rx<br />
enabled logging for the receiving of RIP packets<br />
See also SYSTEM LOG LIST<br />
SYSTEM LOG<br />
SYSTEM LOG LIST<br />
Syntax SYSTEM LOG LIST []<br />
Description The system log list command displays the tracing options for the modules available<br />
in the current image that you are using. The SYSTEM LOG LIST MODULE<br />
command displays the tracing options for an individual module specified in the<br />
command. Both commands display the current status of the tracing options set<br />
using the command SYSTEM LOG ENABLE|DISABLE.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
module<br />
The name of a module that exists in your<br />
current image build. This can be either RIP<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 21<br />
or IP.<br />
Examples system log list<br />
--> system log list<br />
rip errors (ENABLED)<br />
rip rx (disabled)<br />
rip tx (disabled)<br />
ip icmp (disabled)<br />
ip rawip (ENABLED)<br />
ip udp (disabled)<br />
ip tcp (disabled)<br />
ip arp (disabled)<br />
ip socket (disabled)<br />
system log list <br />
--> system log list ip<br />
ip icmp (disabled)<br />
ip rawip (ENABLED)<br />
ip udp (disabled)<br />
ip tcp (disabled)<br />
ip arp (disabled)<br />
ip socket (disabled)<br />
See also SYSTEM LOG<br />
SYSTEM LOG ENABLE|DISABLE<br />
SYSTEM NAME<br />
Syntax SYSTEM NAME {NONE | ]<br />
Description This command sets the system name.<br />
To show the current system name use the system info command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
sys-name The name of the system. none<br />
Example --> system name myRG600<br />
SYSTEM RESTART<br />
Syntax SYSTEM RESTART<br />
Description This command restarts the Residential Gateway.<br />
Example --> system restart
22 Chapter 1 – System Management<br />
SYSTEM SET LOGIN ACCESS<br />
Syntax SYSTEM SET LOGIN ACCESS {DEFAULT|ENGINEER|SUPERUSER}<br />
Description This command sets the access permissions of a user who has been added to the<br />
system using the SYSTEM ADD LOGIN command. Only a Super user can use this<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
DEFAULT/<br />
ENGINEER/<br />
SUPERUSER<br />
Access permissions for a user.<br />
Default<br />
Example --> system set login ckearns access engineer<br />
See also SYSTEM SET LOGIN MAYCONFIGURE<br />
SYSTEM SET LOGIN MAYDIALIN<br />
For more information on the types of user access permissions, see Access<br />
permissions to the CLI.<br />
SYSTEM SET LOGIN MAYCONFIGURE<br />
Syntax SYSTEM SET LOGIN MAYCONFIGURE {ENABLED|DISABLED}<br />
Description This command sets configuration permissions for a user who has been added to the<br />
system using the ADD SYSTEM LOGIN or the ADD SYSTEM USER command.<br />
Only a Super user can use this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
ENABLED/<br />
DISABLED<br />
Determines whether or not a user can<br />
configure the system.<br />
enabled<br />
Example --> system set login ckearns mayconfigure disabled<br />
See also SYSTEM SET LOGIN ACCESS<br />
SYSTEM SET LOGIN MAYDIALIN
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 23<br />
SYSTEM SET LOGIN MAYDIALIN<br />
Syntax SYSTEM SET LOGIN MAYDIALIN {ENABLED|DISABLED}<br />
Description This command sets dialin permissions for a user who has been added to the system<br />
using the SYSTEM ADD LOGIN command. Only a Super user can use this<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
ENABLED/<br />
DISABLED<br />
Determines whether or not a user can dialin<br />
to the system.<br />
disabled<br />
Example --> system set login ckearns maydialin enabled<br />
See also SYSTEM SET LOGIN ACCESS<br />
SYSTEM SET LOGIN MAYCONFIGURE<br />
SYSTEM SET USER ACCESS<br />
Syntax SYSTEM SET USER ACCESS {DEFAULT|ENGINEER|SUPERUSER}<br />
Description This command sets the access permissions of a user who has been added to the<br />
system using the SYSTEM ADD USER command. Only a Super user can use this<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
DEFAULT/<br />
ENGINEER/<br />
SUPERUSER<br />
Allows you to set the access permissions for<br />
a user.<br />
default<br />
Example --> system set user ckearns access default<br />
See also SYSTEM SET USER MAYCONFIGURE<br />
SYSTEM SET USER MAYDIALIN<br />
SYSTEM SET USER MAYCONFIGURE<br />
Syntax SYSTEM SET USER MAYCONFIGURE {ENABLED|DISABLED}
24 Chapter 1 – System Management<br />
Description This command sets configuration permissions for a user who has been added to the<br />
system using the ADD SYSTEM USER command. Only a Super user can use this<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
ENABLED/<br />
DISABLED<br />
Determines whether or not a user can<br />
configure the system.<br />
disabled<br />
Example --> system set user ckearns mayconfigure enabled<br />
See also SYSTEM SET USER ACCESS<br />
SYSTEM SET USER MAYDIALIN<br />
SYSTEM SET USER MAYDIALIN<br />
Syntax SYSTEM SET USER MAYDIALIN {ENABLED|DISABLED}<br />
Description This command sets dial in permissions for a user who has been added to the system<br />
using the SYSTEM ADD USER command. Only a Super user can use this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name The name of an existing user. N/A<br />
ENABLED/<br />
DISABLED<br />
Determines whether or not a user can dialin<br />
to the system.<br />
enabled<br />
Example --> system set user ckearns maydialin enabled<br />
See also SYSTEM SET USER ACCESS<br />
SYSTEM SET USER MAYCONFIGURE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 25<br />
User Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage system Users.<br />
User CLI commands<br />
The table below lists the user commands provided by the CLI:<br />
Command<br />
USER LOGOUT<br />
USER PASSWORD<br />
USER CHANGE<br />
USER LOGOUT<br />
Syntax USER LOGOUT<br />
Description This command logs you out of the system. Default, Engineer and Super users can<br />
use this command.<br />
Example --> user logout<br />
Logging out.<br />
Login:<br />
USER PASSWORD<br />
Syntax USER PASSWORD<br />
Description This command allows you to change your user password. Default, Engineer and<br />
Super users can use this command.<br />
Example --> user password<br />
Enter new password *****<br />
Again to verify *****<br />
USER CHANGE<br />
Syntax USER CHANGE <br />
Description This command allows you to change your login to that of another named user.<br />
Super users can use this command. When you change your login to that of a user<br />
with Default or Engineer access permissions, you lose your Super user privileges<br />
and inherit the access permissions of either the Default or Engineer user.<br />
Options The following table gives the range of values for each option which can be specified
26 Chapter 1 – System Management<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A unique login name made up of more than<br />
one character that identifies an individual<br />
user and lets the user access the system.<br />
N/A<br />
Example --> user change admin<br />
You are now logged in as user `admin' ...<br />
See also SYSTEM ADD USER
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 27<br />
Web Server Command <strong>Reference</strong><br />
This chapter describes the Web Server CLI commands.<br />
Web Server CLI commands<br />
The table below lists the Web Server commands provided by the CLI:<br />
Command<br />
WEBSERVER CLEAR STATS<br />
WEBSERVER ENABLE|DISABLE<br />
WEBSERVER SET INTERFACE<br />
WEBSERVER SET<br />
MANAGEMENTIP<br />
WEBSERVER SET PORT<br />
WEBSERVER SET UPNPPORT<br />
WEBSERVER SHOW INFO<br />
WEBSERVER SHOW STATS<br />
WEBSERVER CLEAR STATS<br />
Syntax WEBSERVER CLEAR STATS<br />
Description This command sets all of the Web Server process counters to 0.<br />
Example --> webserver clear stats<br />
See also WEBSERVER SHOW INFO<br />
WEBSERVER ENABLE|DISABLE<br />
Syntax WEBSERVER {ENABLE|DISABLE}<br />
Description This command enables or disables the Web Server process.<br />
By default, the Web Server process is enabled.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables the Web Server process.<br />
Disables the Web Server process.<br />
enable
28 Chapter 1 – System Management<br />
Example --> webserver disable<br />
WebServer is disabled<br />
WEBSERVER SET INTERFACE<br />
Syntax WEBSERVER SET INTERFACE <br />
Description This command specifies the name of an IP interface that the system will use for<br />
UPnP (Universal Plug and Play) communication with other devices on the local area<br />
network.<br />
<br />
Universal Plug and Play support is for future releases.<br />
You must save your configuration (see SYSTEM CONFIG SAVE) and restart your<br />
system (see SYSTEM RESTART) to activate the Web Server settings.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
interface<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the ip list interfaces command.<br />
Iplan<br />
Example --> webserver set interface ip<br />
See also WEBSERVER SET UPNPPORT<br />
WEBSERVER SET MANAGEMENTIP<br />
Syntax WEBSERVER SET MANAGEMENTIP {ip-address}<br />
Description This command causes connections to the Webserver to be allowed from only one IP<br />
address, (e.g. from an IP address that is used by a management device) or from any<br />
IP address (by setting the IP address to 0.0.0.0).<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ip-address<br />
The only IP address that the Web Server<br />
will allow connection requests from. The IP<br />
address is displayed in the following<br />
format: 192.168.102.3<br />
0.0.0.0<br />
Example --> webserver set managementip 192.168.102.3
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 29<br />
Management IP address is 192.168.102.3<br />
WEBSERVER SET PORT<br />
Syntax WEBSERVER SET PORT <br />
Description This command sets the HTTP port number that the Web Server process will use for<br />
accepting connections (from a WEB Browser).<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
port<br />
A valid port number that must be between<br />
0 and 65535.<br />
80<br />
Example --> webserver set port 100<br />
HTTP port number is 100<br />
See also WEBSERVER SET UPNPPORT<br />
WEBSERVER SET UPNPPORT<br />
Syntax WEBSERVER SET UPNPPORT <br />
Description This command sets the TCP port number that the Web Server process will use for<br />
UPnP communication.<br />
<br />
Universal Plug and Play support is for future releases.<br />
You must save your configuration (see SYSTEM CONFIG SAVE) and restart your<br />
system (see SYSTEM RESTART) to activate the Web Server settings.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
port<br />
A valid UPnP port number that must be<br />
between 0 and 65535.<br />
N/A<br />
Example --> webserver set upnpport 280<br />
See also WEBSERVER SET PORT<br />
WEBSERVER SHOW INFO<br />
Syntax WEBSERVER SHOW INFO
30 Chapter 1 – System Management<br />
Description This command displays the following information about the Web Server process:<br />
• EmWeb (Embedded Web Server) release details<br />
• Web Server enabled status (true or false)<br />
• Interface set<br />
• HTTP port set<br />
• UPnP port set<br />
• Management IP address<br />
Example --> webserver show info<br />
Web server configuration:<br />
EmWeb release: R6_0_0E_ISOS<br />
Enabled: true<br />
Interface: lan<br />
HTTP port: 80<br />
UPnP port: 280<br />
Management IP address: 1.2.3.4<br />
See also WEBSERVER CLEAR STATS<br />
WEBSERVER SHOW STATS<br />
Syntax WEBSERVER SHOW STATS<br />
Description This command tells you how many bytes have been transmitted and received by the<br />
Web Server.<br />
Example --> webserver show stats<br />
Web Server statistics:<br />
Bytes transmitted: 2122<br />
Bytes received: 0<br />
See also WEBSERVER SHOW INFO
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 31<br />
Console Access Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to access the Console module.<br />
The Console module is used only for engineer troubleshooting and is not supported<br />
a as user accessible module.<br />
Console access CLI commands<br />
The table below lists the console access commands provided by the CLI:<br />
Command<br />
CONSOLE ENABLE<br />
CONSOLE PROCESS<br />
CONSOLE ENABLE<br />
Syntax CONSOLE ENABLE<br />
Description This command allows you to enter console mode in order to use the console<br />
commands. Only Super users can use this command.<br />
Example --> console enable<br />
Switching from CLI to console mode - type `exit' to return<br />
See also CONSOLE PROCESS<br />
CONSOLE PROCESS<br />
Syntax CONSOLE PROCESS <br />
Description This command allows you to enter a single usable console command without<br />
switching to console mode. You cannot enter blacklisted console commands using<br />
this CLI command. Users with Engineer or Super user access can use this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
console command<br />
A usable console command. You can find a<br />
list of usable commands with a link to<br />
further information about each usable<br />
command at the start of each chapter in this<br />
manual.<br />
N/A<br />
Example The following console process example enters the usable console command, bridge
32 Chapter 1 – System Management<br />
portfilter:<br />
--> console process bridge portfilter<br />
portfilter 2 all<br />
portfilter 3 all<br />
See also CONSOLE ENABLE<br />
CONSOLE COMMAND - EXIT<br />
<br />
This console command has not been replaced by a CLI command. This is a<br />
special console command to allow Super users to return to the CLI from the<br />
console.<br />
Syntax EXIT<br />
Description This console command allows you to return to the CLI after you have entered<br />
console mode using the command CONSOLE ENABLE. When you want to exit<br />
console mode and return to the CLI, you need to type exit in the root of the console.<br />
Only Super users can use this command.<br />
Example --> exit<br />
Returning to CLI from console<br />
See also CONSOLE ENABLE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 33<br />
Chapter 2<br />
Switch<br />
Introduction<br />
The AT-RG613, AT-RG623 and AT-RG656 residential gateways include an<br />
integrated layer 2 managed switch providing 5 Fast Ethernet transceivers<br />
supporting 10Base-T and 100Base-TX modes, high performance memory bandwidth<br />
(wire speed) and an extensive feature set including tag port based VLAN, QoS<br />
priority, VLAN tagging and MIB counters.<br />
The layer 2 switch uses one 100Base-TX port as an internal port to communicate to<br />
the central processor in order to access layer 3 services such as routing, VoIP<br />
signaling and traffic, firewall and NAT security modules.<br />
The following is the complete set of features available in the switch module:<br />
• IEEE 802.1q tag based VLAN (up to 16 VLANs)<br />
• VLAN ID tag/untag options, per port basis<br />
• Programmable rate limiting, ingress port, egress port, per port basis.<br />
• IGMP v1/v2 snooping for multicast packet filtering<br />
• QoS packet prioritization support: per port, 802.1p and DiffServ based<br />
• Integrated look-up engine with dedicated 1 K unicast MAC addresses<br />
• Automatic address learning, address aging and address migration<br />
• Full duplex IEEE 802.3x & half-duplex back pressure flow control<br />
• Automatic MDI/MDI-X crossover for plug-and-play on all the ports<br />
Switch Core Functional Overview<br />
Address Look-up<br />
The internal look up table stores MAC addreses and their associated information. It<br />
contains a 1K unicast address table plus switching information.
34 Chapter 2 – Switch<br />
Learning<br />
The internal look up engine updates its table with a new entry in the following<br />
conditions:<br />
• the received packetʹs Source Address does not exist in the look up table;<br />
• the received packet is good: the packet has no receive errors and is of legal length.<br />
The look up engine inserts the qualified Source Address into the table, along with<br />
the port number and VLAN information (see below). If the table is full, the last entry<br />
of the table is deleted for the new entry.<br />
To see the current look up entries use the SWITCH SHOW FDB command.<br />
Migration<br />
The internal look up engine monitors whether a station has moved. If so, it updates<br />
the table accordingly. Migration happens in the following conditions:<br />
• the received packet Source Address is in the table but the associated source port<br />
information is different;<br />
• the received packet is good; the packet has no receive errors and is of legal length.<br />
In this case the look up engine updates the existing record in the table with the new<br />
source port information.<br />
Aging<br />
The look up engine updates the timestamp information of a record whenever the<br />
corresponding Source Address appears. The time stamp is used in the aging<br />
process. If a record is not updated for a period of time, the look up engine removes<br />
the record from the table.<br />
The look up engine constantly performs the aging process and is continuously<br />
removing expired records.<br />
The aging period can be set to normal (300 seconds) or fast (800 usecs) or can be<br />
disabled.<br />
Use the SWITCH SET AGINGTIMER command to change aging period or use<br />
SWITCH DISABLE AGINGTIMER to disable aging.<br />
Forwarding<br />
If 802.1q VLAN mode is enabled, the switch assign a VID to every ingress packet.<br />
• If the packet is untagged or tagged with a null VID, the packet is assigned to the<br />
default port VID of the ingress port.<br />
• If the packet is tagged with a non-null VID, the VID in the tag will be used.<br />
The look up process will start from the VLAN table look up. The 12 bit VID value is<br />
converted to a 4 bit FID value (an internal value that represents up to 16 VLANs).<br />
• If the VID is not valid, the packet will be dropped and no address learning will<br />
take place.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 35<br />
• If the VID is valid, the forwarding FID is retrieved. Both the combinations<br />
FID+DA (Destination Address) and FID+SA (Source Address) are looked for in<br />
the forwarding table. The FID+DA look up determines the forwarding ports.<br />
• If FID+DA lookup fails to find a match, the packet will be broadcasted to all<br />
the members (excluding the ingress port) of the VLAN.<br />
• If FID+SA lookup fails, the FID+SA will be learned (ie added to the<br />
forwarding table).<br />
Switching engine<br />
The integrated layer 2 switch features a high performance switching engine to move<br />
data to and from the MACʹs, packet buffers. It operates in store and forward mode<br />
while the efficient switching mechanism reduces overall latency<br />
The integrated layer 2 switch has a 64kB internal frame buffer pool. This is<br />
structured as 512 buffers, with each buffer 128 bytes in size. This resource is shared<br />
between all five ports (4 ports user accessible and one internal reserved for<br />
communication to system main processor).<br />
All the ports are allowed to use any free buffer in the buffer pool.<br />
Rate limiting support<br />
The integrated layer 2 switch supports hardware rate limiting on ʺreceiveʺ and<br />
ʺtransmitʺ independently on a per port basis. It also supports rate limiting in a<br />
priority or non-priority environment.<br />
The rate limit starts from 0kbps and goes up to the line rate in steps of 32 kbps. The<br />
switch uses one second as an interval. At the beginning of each interval, the counter<br />
is cleared to zero, and the rate limit mechanism starts to count the number of bytes<br />
during this interval.<br />
For receive, if the number of bytes exceeds the programmed limit, the switch will<br />
stop receiving packets on the port until the ʺone secondʺ interval expires.<br />
There is an option provided for flow control to prevent packet loss. If the rate limit<br />
is set to 128kbps or greater and the byte counter is 8Kbytes below the limit, the flow<br />
control will be triggered. If the rate limit is set to less than 128kpbs and the byte<br />
counter is 2Kbytes below the limit, the flow control will be triggered.<br />
Ingress Filtering limiting support<br />
The infiltering parameter enables or disables Ingress Filtering of frames admitted on<br />
the specified ports.<br />
A port can be TAGGED to one or more VLANs or UNTAGGED to one only (See<br />
chapter 3). Ingress Filtering Feature (infiltering) acts only for TAGGED ports and<br />
allows filtering of incoming packets.<br />
• Infiltering ON: only TAGGED packets with a VID equals to the VLANs belonged<br />
by the port are admitted. UNTAGGED packets are not admitted.<br />
• Infiltering OFF: Both, TAGGED packets with a VID equals to the VLANs<br />
belonged by the port and UNTAGGED packets are admitted.<br />
• TAGGED packets with VID different from the VLANs belonged by the port are<br />
always discarded
36 Chapter 2 – Switch<br />
When the Infiltering is set to OFF the untagged packets are forwarded to the default<br />
VLAN (VID = 1).<br />
This is true for all the models but the ATRG656. For this platform it is possible set a<br />
“defaultvid” parameter in order to forward the untagged port to the vlan specified<br />
by “defaultvid”.<br />
Layer 3 routing rate limiting<br />
The integrated layer 2 switch is able to limit traffic that goes to the Residential<br />
Gateway network processor where routing tasks need to be performed.<br />
Limitation on the maximum routing rate is necessary to preserve system resources<br />
for high priority tasks like VoIP and IGMP proxy.<br />
To set the maximum routing rate limit use the SWITCH SET ROUTING-LIMIT<br />
command. The maximum routing rate can be selected between 1.0Kfps (Kilo frame<br />
per second) and 6.0Kfps with 0.5Kfps granularity. Selecting NONE equals to disable<br />
the support for routing rate limiting. In this case there is no filter to the traffic<br />
arriving to the network processor and system stability could be affected if traffic is<br />
too high.<br />
If the number of frame per seconds that need to be routed to the network processor<br />
are higher than the selected maximu rate, the layer 2 switch discards packets<br />
addressed to the network processor in order to force the average traffic rate to be<br />
below the target rate.<br />
Class of Service and Differentiated Services<br />
The integrated layer 2 switch support two Class of Service (CoS) mechanisms: IEEE<br />
802.1p tagging (Layer 2) and Differentiated Services (DS) as an advanced<br />
architecture of ToS (Layer 3).<br />
802.1p Traffic Priority<br />
The IEEE 802.1P signaling technique is an IEEE endorsed specification for<br />
prioritizing network traffic at the data-link/MAC sublayer (OSI <strong>Reference</strong> Model<br />
Layer 2).<br />
802.1p traffic is simply classified and sent to the destination; no bandwidth<br />
reservations are established.<br />
802.1p is a spin-off of the 802.1q (VLANs tagging) standard and they work in<br />
tandem (see Figure 1).<br />
The 802.1Q standard specifies a tag that appends to a MAC frame. The VLAN tag<br />
carries VLAN information. The VLAN tag has two parts: The VLAN ID (12-bit) and<br />
User Priority (3-bit). The User Priority field was never defined in the VLAN<br />
standard. The 802.1p implementation defines this prioritization field.<br />
Switches, routers, servers, even desktop systems, can set these priority bits in the<br />
three-bit User Priority field, which allows packets to be grouped into various traffic<br />
classes.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 37<br />
On the AT-RG613, AT-RG623 and AT-RG656 residential gateway, traffic is<br />
prioritized into two egress queues, high priority and low priority, according the<br />
following logic:<br />
• if the received frames are tagged, the User Priority field in the TAG header is<br />
compared with an internal value in the switch called the Base Priority:<br />
• if the received priority value is equal to or greater than the switch Base Priority,<br />
the frames are sent to the high priority egress queue, otherwise frames are sent to<br />
low priority egress queue.<br />
• if the received frames are untagged, the Default Priority value of the egress port is<br />
compared with the switch Base Priority:<br />
• if port Default Priority is equal or greater than switch Base Priority, the frames are<br />
sent to the high priority egress queue, otherwise frames are sent to low priority<br />
egress queue<br />
If the egress port is tagged, the Default Priority value of that port is assigned to the<br />
User Priority field in the outgoing frames.<br />
To show the current switch Base Priority and port Default Priority values, use the<br />
SWITCH SHOW and SWITCH SHOW PORT commands, respectively.<br />
To change the switch Base Priority and port Default Priority use the SWITCH SET<br />
PRIORITY and SWITCH SET PORT commands, respectively.<br />
Differentiated Services Code Point (DSCP)<br />
The DSCP octet in the IP header classifies the packet service level.<br />
The DSCP replaces the ToS Octet in the Ipv4 header (see Figure 1).<br />
Currently, only the first six bits are used. Two bits of the DSCP are reserved for<br />
future definitions. This allows up to 64 different classifications for service levels.<br />
On the AT-RG613, AT-RG623 and AT-RG656 Residential Gateway it is possible to<br />
assign frames to two different egress priority queues, high priority and low priority,<br />
according to the DSCP value in the IP header of the received frames.<br />
To show the current DSCP priority scheme, use the SWITCH SHOW QOS<br />
command.<br />
To change the current DSCP priority scheme, use the SWITCH SET QOS command.
38 Chapter 2 – Switch<br />
7 octects<br />
PREAMBLE<br />
MAC Header<br />
1 octects<br />
START FRAME DELIMITER<br />
6 octects<br />
DESTINATION ADDRESS<br />
6 octects<br />
SOURCE ADDRESS<br />
1 0 0 0 0 0 0 1<br />
2 octects<br />
2 octects<br />
LENGTH/TYPE = 802.1QTagType<br />
TAG CONTROL INFORMATION<br />
0 0 0 0 0 0 0 0<br />
user priority CFI<br />
TAG<br />
header<br />
2 octects<br />
MAC CLIENT LENGTH/TYPE<br />
VLAN identifier VID (12 bit)<br />
IP Header<br />
IP Header<br />
Version<br />
IHL<br />
42 - 1500<br />
octects<br />
precedence D T R M 0<br />
TOS<br />
IP Payload<br />
Total Length<br />
4 octects<br />
FRAME CHECK SEQUENCE<br />
Identification<br />
flags<br />
fragment offset<br />
TTL<br />
Protocol<br />
Header Checksum<br />
Protocol<br />
Source IP Address<br />
Destination IP Address<br />
Figure 1. IP Packet overview.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 39<br />
Switch Command <strong>Reference</strong><br />
This section describes the commands available on the Residential Gateway to<br />
configure and manage switch ports and the address look up table.<br />
switch CLI commands<br />
The table below lists the switch commands provided by the CLI:<br />
Command<br />
SWITCH DISABLE AGEINGTIMER<br />
SWITCH DISABLE LEARNING<br />
SWITCH DISABLE PORT<br />
SWITCH ENABLE AGEINGTIMER<br />
SWITCH ENABLE LEARNING<br />
SWITCH ENABLE PORT<br />
SWITCH RESET<br />
SWITCH SET PORT<br />
SWITCH SET PRIORITY<br />
SWITCH SET QOS<br />
SWITCH SET ROUTING-LIMIT<br />
SWITCH SHOW<br />
SWITCH SHOW FDB<br />
SWITCH SHOW PORT<br />
SWITCH SHOW QOS<br />
SWITCH DISABLE AGEINGTIMER<br />
Syntax SWITCH DISABLE AGEINGTIMER<br />
Description This command stops the aging timer used by the look up engine to remove expired<br />
fdb entries.<br />
If the ageing timer is disabled, the look up entries in the fdb are kept permanently<br />
until the SWITCH ENABLE AGEINGTIMER command entered or the switch is<br />
reset.<br />
To show the current switch status, use the SWITCH SHOW command.<br />
Example --> switch disable ageingtimer<br />
See also SWITCH ENABLE AGEINGTIMER<br />
SWITCH SHOW
40 Chapter 2 – Switch<br />
SWITCH DISABLE LEARNING<br />
Syntax SWITCH DISABLE LEARNING<br />
Description This command stops the learning engine used to update the look up table when<br />
frame are received from new Source Addresses.<br />
To restore the learning process, use the SWITCH ENABLE LEARNING command.<br />
To show the current switch status, use the SWITCH SHOW command.<br />
Example --> switch disable learning<br />
See also SWITCH ENABLE LEARNING<br />
SWITCH SHOW<br />
SWITCH DISABLE PORT<br />
Syntax SWITCH DISABLE PORT [FLOW JAMMING]<br />
Description This command disables the selected switch port, or disables a flow control<br />
mechanism on the port.<br />
If jamming is specified, the jamming signal used for flow control on half duplex<br />
ports will be disabled.<br />
To show the current port status, use the SWITCH SHOW PORT command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
port-name<br />
One of the switch ports to be disabled.<br />
Available ports are:<br />
• wan<br />
• lan1<br />
• lan2<br />
• lan3<br />
N/A<br />
Example --> switch disable port lan1<br />
See also SWITCH ENABLE PORT<br />
SWITCH SHOW PORT<br />
SWITCH ENABLE AGEINGTIMER<br />
Syntax SWITCH ENABLE AGEINGTIMER<br />
Description This command restarts the aging timer used by the look up engine to update the<br />
aging of fdb entries.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 41<br />
To show the current switch status, use the SWITCH SHOW command.<br />
Example --> switch enable ageingtimer<br />
See also SWITCH DISABLE AGEINGTIMER<br />
SWITCH SHOW<br />
SWITCH ENABLE LEARNING<br />
Syntax SWITCH ENABLE LEARNING<br />
Description This command restarts the learning process used by the look up engine to update<br />
the fdb when frames from new addresses are received.<br />
To show the current switch status, use the SWITCH SHOW command.<br />
Example --> switch enable learning<br />
See also SWITCH DISABLE LEARNING<br />
SWITCH SHOW<br />
SWITCH ENABLE PORT<br />
Syntax SWITCH ENABLE PORT [FLOW JAMMING]<br />
Description This command enables the selected switch port.<br />
If jamming is specified, flow control on half duplex ports is enabled.<br />
To show the current port status, use the SWITCH SHOW PORT command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
port-name<br />
One of the switch ports to be enabled.<br />
Available ports are:<br />
• wan<br />
• lan1<br />
• lan2<br />
• lan3<br />
N/A<br />
Example --> switch enable port lan1<br />
See also SWITCH DISABLE PORT<br />
SWITCH SHOW PORT<br />
SWITCH RESET<br />
Syntax SWITCH RESET [PORT [COUNTERS]]
42 Chapter 2 – Switch<br />
Description This command completely resets the switch or resets and individual switch port if a<br />
port is specified.<br />
If no port is specified, all internal switch counters are reset and fdb entries removed.<br />
If a port is specified, only the selected port is reset without removing any fdb<br />
entries. Itʹs possible to specify the resetting of just the counters associated with a<br />
port. In this case the physical layer is not reset and no link interruption occurs.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
port-name<br />
One of the switch ports to be reset.<br />
Available ports are:<br />
• wan<br />
• lan1<br />
• lan2<br />
• lan3<br />
N/A<br />
Example --> switch reset<br />
--> switch reset port wan<br />
See also SWITCH SHOW<br />
SWITCH SHOW PORT<br />
SWITCH SET AGEINGTIMER<br />
Syntax SWITCH SET AGEINGTIMER {FAST | NORMAL}<br />
Description This command sets the threshold value of the ageing timer, after which an<br />
unrefreshed dynamic entry in the Forwarding Database is automatically removed.<br />
FAST sets the aging timer to 800 µSec., while NORMAL sets the aging timer to 300 Sec.<br />
Example - -> switch set ageingtimer fast<br />
SWITCH SET PORT<br />
Syntax SWITCH SET PORT { BROADCASTLIMIT < broadcast-multicast-limit ><br />
|DEFAULTPRIORITY | DEFAULTVID INFILTERING<br />
{OFF | ON} | MULTICASTLIMIT | NOQOS | QOS<br />
|RCVLIMIT | TRSLIMIT | SPEED {100MFULL | 100MHALF |<br />
10MFULL | 10MHALF | AUTONEGOTIATE} }<br />
Description This command modifies the values of parameters for switch ports.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 43<br />
Option Description Default Value<br />
port-name<br />
default-priority<br />
vlanID<br />
broadcastmulticast-limit<br />
BROADCASTLI<br />
MIT<br />
MULTICASTLI<br />
MIT<br />
One of the switch ports to be configured.<br />
Available ports are:<br />
• wan<br />
• lan1<br />
• lan2<br />
• lan3<br />
The priority value associated with the port.<br />
If the port is set to receive untagged frames,<br />
then if the port Default Priority is equal or<br />
greater than switch Base Priority, the frames<br />
are sent to the high priority egress queue,<br />
otherwise frames are sent to low priority<br />
egress queue.<br />
Available values are from 0 to 7.<br />
The VLANID parameter specifies a VLAN<br />
Identifier (VID). When the infiltering is set<br />
to off the untagged packets are forwarded<br />
to the VLAN identified by this parameter.<br />
The admitted rate for broadcast or multicast<br />
frames. The rate is expressed in percent of<br />
max possible bandwidth on the specified<br />
port. If rcvlimit has been set on port, all<br />
percentages are related to rcvlimit<br />
bandwidth. Possible values are:<br />
• 20%<br />
• 10%<br />
• 5%<br />
• 3.3%<br />
• none<br />
When both broadcast and multicast limit<br />
are enabled the admitted rate is the same<br />
for both the filter.(Available only on AT-<br />
RG656 platform)<br />
The broadcastlimit parameter enables or<br />
disables a filter on broadcast frames<br />
admitted on the specified ports.<br />
When both broadcast and multicast limit<br />
are enabled the admitted rate is the same<br />
for both the filter.<br />
(Available only on AT-RG656 platform)<br />
The multicastlimit parameter enables or<br />
disables a filter on multicast frames<br />
admitted on the specified ports.<br />
When both broadcast and multicast limit<br />
are enabled the admitted rate is the same<br />
for both the filter.<br />
N/A<br />
0<br />
1<br />
N/A<br />
N/A<br />
N/A
44 Chapter 2 – Switch<br />
(Available only on AT-RG656 platform)<br />
INFILTERING<br />
The infiltering parameter enables or<br />
disables Ingress Filtering of frames<br />
admitted on the specified ports. Each port<br />
on the switch belongs to one or more<br />
VLANs.<br />
If INFILTERING is Enabled then tagged<br />
packets arriving at the port will only be<br />
admitted if the VID in the packet’s tag is<br />
equal to the VID of one of the VLANs that<br />
the port is a member of.<br />
N/A<br />
Untagged frames are also admitted if the<br />
port in an untagged member of some<br />
VLAN.<br />
If OFF is specified, Ingress Filtering is<br />
disabled, and no frames are discarded by<br />
this part of the Ingress Rules.<br />
NOQOS Disable 802.1p priority scheme. N/A<br />
QOS Enable 802.1p priority scheme. N/A<br />
RCVLIMIT<br />
TRSLIMIT<br />
speed<br />
The rcvlimit parameter specifies a rate<br />
limiting on reception bandwith for the port.<br />
The value of represents kbit per<br />
second reception rate above which the<br />
incoming data will be discarded.<br />
If the none or 0 is specified, then rate<br />
limiting is turned off.<br />
If any other is specified, the<br />
reception of frames will be limited to that<br />
bandwidth.<br />
The trslimit parameter specifies a rate<br />
limiting on transmission bandwith for the<br />
port. The value of represents kbit<br />
per second transmission rate above which<br />
the outgoing data will be discarded.<br />
If the none or 0 is specified, then rate<br />
limiting is turned off.<br />
If any other is specified, the<br />
transmission of frames will be limited to<br />
that bandwidth.<br />
The speed parameter specifies the<br />
configured line speed and duplex mode of<br />
the port.<br />
If autonegotiate is specified, the port will<br />
autonegotiate the line speed and duplex<br />
mode with the device attached to the port.<br />
If any other option is specified, the port will<br />
be forced to the speed and duplex mode<br />
0<br />
autonegotiate
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 45<br />
given.<br />
Examples To limit port reception rate to 10000 kbps, use the command:<br />
--> switch set port wan rcvlimit 10000<br />
To limit broadcast traffic only to 3.3% of port bandwidth, use the command:<br />
--> switch set port wan broadcastlimit 3.3%<br />
SWITCH SET PRIORITY<br />
Syntax SWITCH SET PRIORITY <br />
Description This command sets the switch base priority.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
802.1p_base_priority<br />
The system priority value. Available<br />
values are from 0 to 7.<br />
4<br />
Example --> switch set priority 7<br />
SWITCH SET QOS<br />
Syntax SWITCH SET QOS PRIORITY {HIGH | LOW}<br />
Description This command maps the priority levels for Quality of Service.<br />
The six bit TOS field in the IP header is decoded as 64 entries and for each one it is<br />
possible to specify the priority.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
dscpcode<br />
dscpcode-list is a comma-separate list of<br />
numbers in the range 0-63 which represent<br />
the DSCP (Differentiated Service Code<br />
Point) value in the most significant 6 bits of<br />
the TOS field in IPv4 header.<br />
N/A<br />
Example To set the high priority for DSCP values 24 and 37, use the command:
46 Chapter 2 – Switch<br />
--> switch set qos 24,37 priority high<br />
SWITCH SET ROUTING-LIMIT<br />
Syntax SWITCH SET ROUTING-LIMIT <br />
Description This command set the maximum number of frame per seconds that the layer2<br />
switch forward to the Residential Gateway network processor for routing purposes.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
limit<br />
Itʹs the traffic maximum rate (frame per<br />
seconds) sent to the network processor.<br />
Available values are:<br />
1.0Kfps<br />
1.5Kfps<br />
2.0Kfps<br />
2.5Kfps<br />
3.0Kfps<br />
3.5Kfps<br />
4.0Kfps<br />
4.5Kfps<br />
5.0Kfps<br />
5.5Kfps<br />
6.0Kfps<br />
none<br />
None equals disable the routing limit.<br />
none<br />
Example<br />
--> switch set routing-limit 6.0kfps<br />
SWITCH SHOW<br />
Syntax SWITCH SHOW<br />
Description This command shows the following switch parameters:<br />
Switch address The MAC address of the switch; it is used as the source<br />
address in pause control frames.<br />
Learning<br />
Ageing timer<br />
Ageing time<br />
Whether or not the switch’s dynamic learning and<br />
updating of the Forwarding Database is enabled.<br />
Whether or not the ageing timer is enabled.<br />
The value of the ageing timer, after which a dynamic entry<br />
is removed from the Forwarding Database.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 47<br />
UpTime<br />
Base Priority<br />
Routing-limit<br />
The time in hours:minutes:seconds since the switch was<br />
last powered up, rebooted, or restarted.<br />
The bottom end of the range of priority values assigned to<br />
the high priority egress queue.<br />
The maximum number of frame per sencond that the<br />
switch forwards to the processor.<br />
Example --> switch show<br />
Switch configuration<br />
------------------------------------------------------------------------<br />
Switch address<br />
10-20-30-40-50-6f<br />
Learning<br />
ON<br />
Ageing timer<br />
ON<br />
Ageing time 300 Sec. (NORMAL)<br />
UpTime 00:41:28<br />
802.1p Base Priority 4<br />
Routing-limit<br />
none<br />
------------------------------------------------------------------------<br />
See also SWITCH SHOW PORT<br />
SWITCH SHOW FDB<br />
Syntax SWITCH SHOW FDB [{ADDRESS | PORT | VLAN }]<br />
Description This command displays the contents of the Forwarding Database relevant to the<br />
port or the mac address or the vlan specified.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
macadd<br />
port-name<br />
The ADDRESS parameter specifies the MAC<br />
address of the device for which the contents<br />
of the Forwarding Database are to be<br />
displayed.<br />
One of the switch ports. The PORT<br />
parameter specifies that only those entries<br />
in the Forwarding Database which were<br />
learned from the specified port are to be<br />
displayed.<br />
Available ports are:<br />
• wan<br />
• lan1<br />
• lan2<br />
• lan3<br />
N/A<br />
N/A
48 Chapter 2 – Switch<br />
vlanname<br />
The VLAN parameter specifies the VLAN<br />
identifier of the VLAN for which the<br />
contents of the Forwarding Database are to<br />
be displayed.<br />
N/A<br />
Examples To display all the fdb content:<br />
--> switch show fdb<br />
Switch Forwarding Database<br />
--------------------------------------------------------------------------<br />
VLAN MAC address Port Status<br />
--------------------------------------------------------------------------<br />
1 00-00-cd-08-25-30 wan Dynamic<br />
1 00-05-b7-00-0f-5e wan Dynamic<br />
1 00-30-84-25-77-3e wan Dynamic<br />
10 00-30-84-ee-40-60 lan1 Dynamic<br />
10 00-30-84-ee-40-83 lan1 Dynamic<br />
20 00-90-fb-07-9d-c9 lan2 Dynamic<br />
30 00-a0-d2-18-49-fa lan3 Dynamic<br />
30 00-c0-b7-a3-d0-40 lan3 Dynamic<br />
--------------------------------------------------------------------------<br />
To display only the fdb content related to a specific MAC address:<br />
--> switch show fdb address 00-05-b7-00-0f-5e<br />
Switch Forwarding Database<br />
--------------------------------------------------------------------------<br />
VLAN MAC address Port Status<br />
--------------------------------------------------------------------------<br />
1 00-05-b7-00-0f-5e wan Dynamic<br />
--------------------------------------------------------------------------<br />
To display only the fdb content related to a specific switch port:<br />
--> switch show fdb port lan1<br />
Switch Forwarding Database<br />
---------------------------------------------------------------------------<br />
VLAN MAC address Port Status<br />
---------------------------------------------------------------------------<br />
10 00-30-84-ee-40-60 lan1 Dynamic<br />
10 00-30-84-ee-40-83 lan1 Dynamic<br />
To display only the fdb content related to a specific VLAN:<br />
--> switch show fdb vlan 30<br />
Switch Forwarding Database<br />
---------------------------------------------------------------------------<br />
VLAN MAC address Port Status<br />
---------------------------------------------------------------------------<br />
30 00-a0-d2-18-49-fa lan3 Dynamic<br />
30 00-c0-b7-a3-d0-40 lan3 Dynamic
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 49<br />
SWITCH SHOW PORT<br />
Syntax SWITCH SHOW PORT [COUNTERS]<br />
Description This command displays general information about the specified switch port.<br />
Port<br />
Port reference.<br />
Status The admin status of the port; one of<br />
“ENABLED” or “DISABLED”.<br />
Link state<br />
Uptime<br />
Port media type<br />
Configured speed/duplex<br />
Acceptable frame type<br />
Broadcast rate limit<br />
Multicast rate limit<br />
Receive rate limit<br />
Current learned, lock state<br />
Enabled flow control(s)<br />
The link state of the port, one of “Up” or<br />
“Down”.<br />
The count in hours:minutes:seconds of the<br />
elapsed time since the port was last reset or<br />
initialised.<br />
The MAC entity type.<br />
The port speed and duplex mode configured<br />
for this port. One of “Autonegotiate” or a<br />
combination of a speed (one of “10 Mbps” or<br />
“100 Mbps”) and a duplex mode (one of “half<br />
duplex” or “full duplex”).<br />
The maximum acceptable frame size.<br />
The limit of the rate of reception of broadcast<br />
frames for this port, in frames per second.<br />
The limit of the rate of reception of multicast<br />
frames for this port, in frames per second.<br />
The limit of the rate of reception of unicast<br />
frames for this port, in kbit per second.<br />
The number of MAC addresses currently<br />
learned on this port and the state of locking for<br />
this port. The lock state is one of “not locked”,<br />
locked by limit” or “locked by command”.<br />
Flow control parameters set for the port; zero,<br />
one or two of “Jamming” and “Pause”. If flow<br />
control is implemented on the switch, then this<br />
kind of flow control is applied to the port.<br />
Send tagged pkts for VLAN(s) The name and VLAN Identifier (VID) of the<br />
tagged VLAN(s), if any, to which the port<br />
belongs.<br />
Port based VLAN<br />
Ingress filtering<br />
The name and VLAN Identifier (VID) of the<br />
port-based VLAN to which the port belongs.<br />
The state of Ingress Filtering: one of “on” or<br />
ʺoffʺ<br />
802.1p Default Priority The current value set for Default Priority.
50 Chapter 2 – Switch<br />
802.1p Priority The current status for Default Priority: one of<br />
“on” or ʺoffʺ<br />
Default Vlan Id<br />
The current value set for Default Vlan ID<br />
(Displaied only on AT-RG656 platform)<br />
If the counters parameter is specified the following information are reported:<br />
• Combined receive/transmit packets by size (octets) counter<br />
packets size
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 51<br />
Pkts<br />
MulticastPkts<br />
BroadcastPkts<br />
PauseMACctlFrms<br />
FrameWDeferrdTx<br />
SingleCollsnFrm<br />
MultCollsnFrm<br />
LateCollsns<br />
The number of packets.<br />
The number of multicast packets.<br />
The number of broadcast packets.<br />
The number of PAUSE MAC Control frames.<br />
The number of frames deferred once before<br />
successful transmission.<br />
The number of frames which experienced<br />
exactlyone collision.<br />
The number of frames which experienced 2 to<br />
15 collisions (including late collisions).<br />
The number of frames which experienced late<br />
collisions.<br />
ExcessivCollsns The number of frames aborted before<br />
transmission after 16 collisions.<br />
CollisionFrms<br />
• Miscellaneous Counters<br />
DropEvents<br />
Total number of collisions.<br />
The number of packets discarded at ingress<br />
port.<br />
totalPktTxAbort The number of packets aborted during<br />
transmission.<br />
Examples --> switch show port wan<br />
Switch Port information<br />
--------------------------------------------------------------------------<br />
Port: wan<br />
Status<br />
Enabled<br />
Link state<br />
Up<br />
UpTime 00:29:38<br />
Port media type<br />
ISO8802-3 CSMACD<br />
Configured speed/duplex<br />
Autonegotiate<br />
Actual speed/duplex -<br />
Acceptable frame type<br />
packet sizes up to 1536 bytes<br />
(inclusive)<br />
Broadcast rate limit -<br />
Multicast rate limit -<br />
Receive rate limit -<br />
Current learned, lock state 10, not locked<br />
Enabled flow control(s)<br />
Pause<br />
Send tagged pkts for VLAN(s) -<br />
Port based VLAN default (1)<br />
Ingress filtering<br />
ON<br />
802.1p Default Priority 0<br />
802.1p Priority Disabled<br />
Default Vlan Id 1<br />
--------------------------------------------------------------------------
52 Chapter 2 – Switch<br />
--> switch show port wan counters<br />
Switch Counter<br />
--------------------------------------------------------------------------<br />
Port: wan<br />
Received packets by size (octets) counters:<br />
64 1668 256 - 511 31<br />
65 - 127 1119 512 - 1023 26<br />
128 - 255 777 1024 - 1522 6<br />
General Counters:<br />
Receive:<br />
Transmit:<br />
Octets 377801 Octets 1108<br />
Pkts 3627 Pkts 17<br />
FCSerrors 0 MulticastPkts 0<br />
MulticastPkts 7 BroadcastPkts 0<br />
BroadcastPkts 1377 PauseMACctlFrms 0<br />
PauseMACctlFrms 0 FrameWDeferrdTx 0<br />
OversizePkts 0 SingleCollsnFrm 0<br />
Fragments 0 MultiCollsnFrm 0<br />
Jabbers 0 LateCollsns 0<br />
MACControlFrms 0 ExcessivCollsns 0<br />
UnsupportCode - CollisionFrames 0<br />
AlignmentErrors 0<br />
SymErDurCarrier 0<br />
UndersizePkts 0<br />
Miscellaneous Counters:<br />
DropEvents 0<br />
totalPktTxAbort 0<br />
--------------------------------------------------------------------------<br />
SWITCH SHOW QOS<br />
Syntax SWITCH SHOW QOS<br />
Description This command displays the current mapping of user priority level to QOS egress<br />
queue for the switch.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 53<br />
Chapter 3<br />
VLAN<br />
INTRODUCTION<br />
VLAN is a networking technology that allows networks to be segmented logically<br />
without having to be physically rewired.<br />
Many Ethernet switches support virtual LAN (VLAN) technologies. By replacing<br />
hubs with VLAN switches, the network administrator can create a virtual network<br />
within existing network. With VLAN, the network logical topology is independent<br />
of the physical topology of the wiring. Each computer can be assigned a VLAN<br />
identification number (ID), and computers with the same VLAN ID can act and<br />
function as though they are all on the same physical network.<br />
So, the traffic on a VLAN is isolated and thus all communications remain within the<br />
VLAN. The assignment of VLAN IDs is done by the switches and can be managed<br />
remotely using network management software.<br />
VLAN switches can function in different ways. They can be switched at the datalink<br />
layer (layer 2 of the Open Systems Interconnection reference model) or the<br />
network layer (layer 3), depending on the type of switching technology used. The<br />
main advantage of using VLAN technologies is that users can be grouped together<br />
according to their need for network communication, regardless of their actual<br />
physical locations. This isolation will help to reduce unnecessary traffic so better<br />
network performance. The disadvantage is that additional configuration is required<br />
to set up and establish the VLANs when implementing these switches.<br />
VLAN TAGGING<br />
VLAN technology introduces the following three basic types of frame:<br />
• Untagged frames<br />
• Priority-tagged frames<br />
• VLAN-tagged frames
54 Chapter 3 – VLAN<br />
An untagged frame or a priority-tagged frame does not carry any identification of the<br />
VLAN to which it belongs. Such frames are classified as belonging to a particular<br />
VLAN based on parameters associated with the receiving port.<br />
This classification mechanism requires the association of a specific VLAN ID, the<br />
Port VLAN Identifier, or PVID, with each of the switch ports.<br />
The PVID for a given port provides the VID for untagged and priority-tagged<br />
frames received through that port. The PVID for each port shall contain a valid VID<br />
value, and shall not contain the value of the null VLAN ID (see Table 3).<br />
A VLAN-tagged frame carries an explicit identification of the VLAN to which it<br />
belongs; i.e., it carries a non-null VID. Such a frame is classified as belonging to a<br />
particular VLAN based on the value of the VID that is included in the tag header.<br />
The presence of a tag header carrying a non-null VID means that some other device,<br />
either the originator of the frame or a VLAN-aware switch, has mapped this frame<br />
into a VLAN and has inserted the appropriate VID.<br />
Tagging of frames is performed for the following purposes:<br />
• To allow user priority information to be added to frames carried on IEEE 802<br />
LAN MAC types that have no inherent ability to signal priority information at the<br />
MAC protocol level;<br />
• To allow a frame to carry a VID;<br />
• To allow the frame to indicate the format of MAC Address information carried in<br />
MAC user data;<br />
• To allow VLANs to be supported across different MAC types.<br />
Tagging a frame requires:<br />
• The addition of a tag header to the frame. This header is inserted immediately<br />
following the destination MAC Address and source MAC Address fields of the<br />
frame to be transmitted;<br />
• Recomputation of the Frame Check Sequence (FCS).<br />
When relaying a tagged frame between 802.3/Ethernet MACs, a switch may adjust<br />
the PAD field such that the minimum size of a transmitted tagged frame is 68 octets.<br />
7 octects<br />
PREAMBLE<br />
1 octects<br />
START FRAME DELIMITER<br />
6 octects<br />
DESTINATION ADDRESS<br />
6 octects<br />
SOURCE ADDRESS<br />
1 0 0 0 0 0 0 1<br />
2 octects<br />
2 octects<br />
LENGTH/TYPE = 802.1QTagType<br />
TAG CONTROL INFORMATION<br />
0 0 0 0 0 0 0 0<br />
user priority CFI<br />
TAG<br />
header<br />
2 octects<br />
MAC CLIENT LENGTH/TYPE<br />
VLAN identifier VID (12 bit)<br />
42 - 1500<br />
octects<br />
MAC CLIENT DATA<br />
PAD<br />
4 octects<br />
FRAME CHECK SEQUENCE<br />
Figure 2. Tagged frame format according to IEEE 802.3ac standard.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 55<br />
The tag header carries the following information (see Figure 2):<br />
• The Tag Protocol Identifier (TPID) carrying an Ethernet Type value<br />
(802.1QTagType), which identifies the frame as a tagged frame. The value of<br />
802.1QTagType is 81-00<br />
• Tag Control Information (TCI). The TCI field is two octets in length, and contains<br />
user priority, CFI and VID (VLAN Identifier) fields. Figure ... illustrates the<br />
structure of the TCI field:<br />
• User priority. The user priority field is three bits in length, interpreted as a<br />
binary number. The user priority is therefore capable of representing eight<br />
priority levels, 0 through 7. This field allows the tagged frame to carry user<br />
priority information across Bridged LANs in which individual LAN<br />
segments may be unable to signal priority.<br />
• Canonical Format Indicator (CFI). The Canonical Format Indicator (CFI) is a<br />
single bit flag value. CFI reset indicates that all MAC Address information<br />
that may be present in the MAC data carried by the frame is in Canonical<br />
format.<br />
• The meaning of the CFI when set depends upon the variant of the tag<br />
header in which it appears.<br />
• In an Ethernet-encoded tag header, transmitted using 802.3/Ethernet MAC<br />
methods, CFI has the following meanings:<br />
• When set, indicates that the E-RIF field is present in the tag header,<br />
and that the NCFI bit in the RIF determines whether MAC Address<br />
information that may be present in the MAC data carried by the<br />
frame is in Canonical (C) or Non-canonical (N) format;<br />
• When reset, indicates that the E-RIF field is not present in the tag<br />
header, and that all MAC Address information that may be present<br />
in the MAC data carried by the frame is in Canonical format (C).<br />
• VLAN Identifier (VID). The twelve-bit VLAN Identifier field uniquely identifies<br />
the VLAN to which the frame belongs. The VID is encoded as an unsigned binary<br />
number. Table 3. Reserved VID values. identifies values of the VID field that have<br />
specific meanings or uses; the remaining values of VID are available for general<br />
use as VLAN identifiers.<br />
A priority-tagged frame is a tagged frame whose tag header contains a VID value<br />
equal to the null VLAN ID.<br />
VID value<br />
(hexadecimal)<br />
0<br />
1<br />
Meaning/Use<br />
The null VLAN ID. Indicates that the tag header contains only<br />
user priority information; no VLAN identifier is present in the<br />
frame. This VID value shall not be configured as a PVID,<br />
configured in any Filtering Database entry, or used in any<br />
Management operation.<br />
The default PVID value used for classifying frames on ingress<br />
through a switch port. The PVID value can be changed by<br />
management on a per-port basis.
56 Chapter 3 – VLAN<br />
FFF<br />
Reserved for implementation use. This VID value shall not be<br />
configured as a PVID, configured in any Filtering Database<br />
entry, used in any Management operation, or transmitted in a<br />
tag header.<br />
Table 3. Reserved VID values.<br />
VLAN SUPPORT ON AT-RG600 RESIDENTIAL GATEWAY<br />
AT-RG613, AT-RG623 and AT-RG656 Residential Gateway supports up to 16 VLAN<br />
(irrespective of whether they are carrying tagged or untagged frames)<br />
The Residential Gateway provides a 16 entry VLAN table that converts VID (12bits)<br />
to an internal value called FID (4 bits) for address look up.<br />
If a non tagged or null-VID tagged packet is received, the ingress port VID is used<br />
for look up.<br />
The look up process starts with a VLAN table look up to determine whether the VID<br />
is valid.<br />
If the VID is not valid the packet will be dropped and its address will not be<br />
learned.<br />
If the VID is valid, FID is retrieved for further look up.<br />
FID + DA is used to determine the destination port. FID + SA is used for learning<br />
purposes.<br />
VLAN definition and port tagging<br />
By default the Residential Gateway starts with only one VLAN defined with name<br />
default and VID=1.<br />
All the system ports are members of the default VLAN.<br />
Use the VLAN SHOW command to display the current VLAN status on the residential<br />
gateway.<br />
Creating and configuring a new VLAN is a two step process:<br />
• A VLAN is created with the VLAN ADD VID command, specifying a name<br />
for the VLAN and its VID value.<br />
• WAN, LAN1, LAN2 and LAN3 ports are added (if required) to the VLAN<br />
using the VLAN ADD PORT command. When a port is added itʹs necessary<br />
to specify the frame format in which packets associated with that VLAN<br />
will be transmitted from that port: untagged or tagged.<br />
Note that a physical port can be a member of one or more VLANs.<br />
• If a port is member of one VLAN only it can accept tagged or untagged frames.<br />
• If a port is member of two or more VLANs it can accept untagged frames for one<br />
VLAN only and tagged frames for the remaining VLANs; or can accept tagged<br />
frames for all the VLANs.<br />
A port can accept tagged or untagged frames on the same VLAN in a mutually<br />
exclusive way (when ingress filtering is enabled):
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 57<br />
• If a port is assigned to a VLAN as untagged, only untagged frames will be<br />
permitted<br />
• if the port is assigned to a VLAN as tagged, only tagged frames will be permitted.<br />
To change the tagged/untagged frame format of a port for a specific VLAN itʹs<br />
necessary remove the port from the VLAN with the VLAN DELETE command and<br />
then re-add the port to the VLAN with the VLAN ADD PORT command,<br />
specifying the required frame format.<br />
To remove a VLAN it is necessary to remove all ports that are members of the<br />
VLAN with the command VLAN DELETE PORT and then remove the VLAN with<br />
the command VLAN DELETE VID. The Default VLAN (VID=1) cannot be removed.<br />
When a port is removed from a VLAN and the same port is not a member of any<br />
other VLAN, the port is automatically added to the default VLAN with the<br />
untagged attribute.<br />
VLAN versus IP Interface<br />
One of the major constraints when using VLANs is that packets exchanged between<br />
hosts that are members of the same VLAN cannot be received by hosts that are<br />
members of a different VLAN.<br />
The Residential Gateway solves this limitation by offering a packet routing service<br />
between different VLANs.<br />
The routing of packets between VLANs is based on the classical layer 3 routing<br />
method as, for example, a typical router performs between IP interfaces.<br />
Based on this approach, there is the requirement that each VLAN that you wish to<br />
be involved in the routing of packets must have an associated IP interface.<br />
In this way, the Layer 3 routing process is able to treat VLAN IP interfaces as<br />
though they were distinct Ethernet ports, and route rules apply as they would for a<br />
multiport router.<br />
Each primary IP interface uses the VLAN data transport services (frame tagging and<br />
untagging and related layer 2 forwarding) as though it were an Ethernet port.<br />
For the system point of view, when a VLAN is used to support an IP interface, the<br />
VLAN becomes a transport device supporting ethernet traffic (see Figure 3).
58 Chapter 3 – VLAN<br />
IP routing<br />
IP layer<br />
IP Interface ip0<br />
IP Interface <br />
IP Interface <br />
Transport<br />
(VLAN)<br />
VLAN default<br />
VLAN <br />
VLAN <br />
Virtual port Ethernet 0<br />
Ethernet 1<br />
Ethernet 1<br />
Layer 2 switch<br />
Physical port<br />
lan1<br />
lan2<br />
lan3<br />
wan<br />
Figure 3. VLAN and IP layer architecture (the greyed area surrounds the entities<br />
always available in the system)<br />
The maximum number of primary IP interfaces that can be defined is 16 and is<br />
equal to the maximum number of VLANs that it is possible to create on the<br />
residential gateway.<br />
To create a primary IP interface and connect it to a VLAN, the following steps must<br />
be performed (see Figure 4):<br />
• Create a VLAN using the VLAN ADD VID command<br />
• Add ports to the VLAN using the VLAN ADD PORT command<br />
• Add the VLAN to the ethernet transports list using the ETHERNET ADD<br />
TRANSPORT command. This command instructs the system that a new<br />
(virtual) transport device has been added to the system.<br />
• Create an IP interface with the IP ADD INTERFACE command. This<br />
command constructs a new IP interface with the specified IP address and<br />
netmask but doesnʹt bind the IP interface to any port.<br />
• Bind the IP interface to the VLAN using the IP ATTACH TRANSPORT<br />
command.<br />
At this point the IP interface is available for any process requiring access to the IP<br />
network.<br />
When more than one IP interfaces is defined, routing between these interfaces is<br />
immediately enabled without requiring any route to be explicitly defined.<br />
By default, the Residential Gateway starts with one IP interface attached to the<br />
default VLAN in order to provide remote access to the system via telnet.<br />
The default VLAN and the IP interface attached to it cannot be removed. Itʹs<br />
possible to remove all the ports from the default VLAN if one or more other VLANs<br />
exist.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 59<br />
Default Configuration<br />
VLAN Creation<br />
IP Interface Creation<br />
VLAN Port Adding<br />
IP Interface Config.<br />
VLAN Ethernet<br />
Transport Adding<br />
IP and VLAN Attach<br />
IP Interface on VLAN<br />
Figure 4. IP interface over VLAN - basic steps
60 Chapter 3 – VLAN<br />
VLAN Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 residential Gateway to create, configure and manage VLANs.<br />
vlan CLI commands<br />
The table below lists the vlan commands provided by the CLI:<br />
Command<br />
VLAN ADD PORT<br />
VLAN ADD VID<br />
VLAN DELETE<br />
VLAN SHOW<br />
VLAN ADD PORT<br />
Syntax VLAN ADD PORT FRAME {TAGGED | UNTAGGED}<br />
Description This command adds an Ethernet port to an existing named VLAN that has been<br />
created with the command VLAN ADD VID.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
vlanname<br />
portname<br />
FRAME<br />
A name that identifies an existing VLAN.<br />
To display the existing VLANs, use the<br />
VLAN SHOW command.<br />
A name that identifies an Ethernet port.<br />
Valid port names (case insensitive) are:<br />
wan, lan1, lan2, lan3.<br />
The FRAME parameter specifies whether a<br />
VLAN tag header is included in each frame<br />
transmitted on the specified ports.<br />
• If tagged is specified, a VLAN tag is<br />
added to frames prior to transmission.<br />
The port is then called a tagged port for<br />
this VLAN.<br />
• If untagged is specified, the frame is<br />
transmitted without a VLAN tag. The<br />
port is then called an untagged port for<br />
this VLAN.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> vlan add voip port lan1 frame untagged
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 61<br />
See also VLAN SHOW<br />
VLAN ADD VID<br />
Syntax VLAN ADD VID [802.1p_priority ]<br />
Description This command defines a new VLAN which has the specified VID value.<br />
The VLAN name can be 16 characters length; it cannot start with a digit and cannot<br />
contain dots ʹ.ʹ or the slash symbols ʹ/ʹ.<br />
This command specifies also the priority value of the tagged packets that from the<br />
network processor are sent to the layer2 switch and then to the network.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
vlanname<br />
vlanID<br />
priority<br />
An arbitrary name that identifies the<br />
VLAN. The name must not be already in<br />
use for another VLAN. The VLAN name<br />
can be a maximum of 16 chars long.<br />
The VLANID parameter specifies a unique<br />
VLAN Identifier (VID) for the VLAN.<br />
• If tagged ports are added to this VLAN,<br />
the specified VID is used in the VID<br />
field of the tag in outgoing frames.<br />
• If untagged ports are added to this<br />
VLAN, the specified VID only acts as an<br />
identifier for the VLAN in the<br />
Forwarding Database.<br />
The default port based VLAN has a VID of<br />
1.<br />
Itʹs the priority value as defined in 802.1p of<br />
the tagged packets that from the Residential<br />
Gateway network processor are sent to the<br />
switch and then outside to the network.<br />
Available values are from 0 to 7.<br />
N/A<br />
N/A<br />
0<br />
Example --> vlan add voip vid 10 802.1p_priority 7<br />
See also VLAN SHOW<br />
VLAN DELETE<br />
Syntax VLAN DELETE [PORT ]<br />
Description This command deletes an existing VLAN created with the VLAN ADD VID<br />
command.
62 Chapter 3 – VLAN<br />
To completely remove a VLAN it is necessary to first remove all port members of<br />
the vlan.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
vlanname<br />
portname<br />
A name that identifies an existing VLAN.<br />
To display the existing VLANs, use the<br />
VLAN SHOW command.<br />
A name that identifies a port members of<br />
the VLAN.<br />
Valid port names (case insensitive) are:<br />
Wan, lan1, lan2, lan3.<br />
N/A<br />
N/A<br />
Example --> vlan delete voip port lan2<br />
--> vlan delete voip<br />
See also VLAN ADD PORT<br />
VLAN ADD VID<br />
VLAN SHOW<br />
VLAN SHOW<br />
Syntax VLAN SHOW<br />
Description This command display the following information about all the VLANs defined in<br />
the system:<br />
• Name<br />
• Identifier<br />
• Status<br />
The name of the VLAN.<br />
The numerical VLAN identifier of the VLAN (VID).<br />
The status of the VLAN (only static VLAN are supported)<br />
• Untagged port(s)<br />
• Tagged port(s)<br />
• 802.1p priority<br />
A list of untagged ports that belong to the VLAN.<br />
A list of tagged ports that belong to the VLAN.<br />
The value of the 802.1.p priority assigned to packets sent<br />
from the Residential Gateway processor.<br />
Example --> vlan show<br />
VLAN information<br />
---------------------------------------------<br />
Name: default<br />
Identifier 1<br />
Status<br />
static<br />
802.1p Priority 7<br />
Untagged port(s)<br />
lan3, wan<br />
Tagged port(s)<br />
cpu<br />
Name: voip<br />
Identifier 10<br />
Status<br />
static
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 63<br />
802.1p Priority 7<br />
Untagged port(s)<br />
lan2<br />
Tagged port(s)<br />
lan1<br />
---------------------------------------------<br />
See also VLAN ADD PORT<br />
VLAN ADD VID
64 Chapter 4 – Emergency<br />
Chapter 4<br />
Emergency<br />
This chapter describes the AT-RG624 and AT-RG634 emergency module to<br />
configure the system connectivity when running in recovery mode.<br />
INTRODUCTION<br />
As reported in section Error! <strong>Reference</strong> source not found. if the Residential<br />
Gateway flash file system is corrupted, the unit will start running a minimal<br />
operating system also called recovery.<br />
From the recovery mode, it’s possible load remotely the complete system<br />
application image and any additional file to recover the unit into a default system<br />
configuration fully operative.<br />
Emergency configuration<br />
Because the connectivity between the Residential Gateway and the remote network<br />
operation center can use different parameters accordingly to the customer network,<br />
it’s necessary configure accordingly the recovery mode in order to allow, when the<br />
unit is running the recovery application, remote access to be established with the<br />
Residential Gateway.<br />
The Emergency module is able to configure the following parameters that are active<br />
only when the unit is running in recovery mode:<br />
Layer 2 vlan configuration.<br />
It’s possible configure a vlan different from the default (VID=1) when recovery<br />
application is running and assign any Ethernet port to this vlan as 802.1Q tagged<br />
port. In this way it’s possible connect to the Residential Gateway also if the<br />
connection is established via a 802.1Q tagged link.<br />
To create a vlan use the command emergency create vlan and specify the vlan<br />
identifier VID value.<br />
To assign an Ethernet port to be member of the new vlan as tagged port use the<br />
command emergency add vlan port frame tagged
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 65<br />
The definition of a new vlan (different from the default) it’s necessary only if the<br />
connectivity to the residential gateway must be established via a 802.1Q tagged<br />
link. In this case the value of the 802.1Q field is equal to the vlan identifier VID<br />
specified in emergency create vlan command.<br />
If the remote connection doesn’t use tagged frames, the existing default vlan can be<br />
used. The default vlan is always defined in the system and cannot be removed.<br />
<br />
Note that if the connectivity to the residential gateway must be established via a<br />
802.1Q tagged link with VID=1 only the emergency add vlan port frame<br />
tagged command must be used. Tagged frames will use implicitly the VID=1.<br />
Layer 3 IP configuration.<br />
It’s possible configure the ip address used to connect remotely to the Residential<br />
Gateway when recovery application is running.<br />
To set a static ip address use the emergency set ipinterface ipaddress<br />
netmask command and to set the default gateway use the emergency set<br />
ipinterface gateway command.<br />
To set a dynamic ip address use the emergency set dhcp enable command.<br />
The Residential Gateway will get the ip address from an any external DHCP server<br />
as well as the interface subnet and the default gateway.<br />
<br />
Note that if no DHCP server is discovered, the Residential Gateway will use the<br />
autoip feature to assign autonomously a random ip address in the range<br />
169.254.0.0. If a DHCP server is becoming available later, the ip interface will<br />
then change the ip address to the value offered by the DHCP server.<br />
Save and activate emergency configuration.<br />
The emergency configuration data set in the previous section are not active until<br />
they are saved permanently in the Residential Gateway e2prom. Emergency<br />
configuration data are saved in an e2prom instead in the flashfs filesystem to<br />
increase the system robustness to any flashfs failure.<br />
To save emergency configuration data in e2prom use the emergency update<br />
command.<br />
Emergency configuration data are also saved in the system configuration file im.conf<br />
any time the command system configuration save is entered. In this way the<br />
information are stored in two different areas: the e2prom and the file im.conf in the<br />
main application partition.<br />
In case the system starts in recovery mode, because the main application partition is<br />
considered corrupted, only the information stored in the e2prom will be used to<br />
configure the recovery application.<br />
During normal system bootstrap initialization, the recovery configuration data<br />
stored in the im.conf file are considered the current emergency settings. This<br />
information are also stored automatically in the e2prom to be immediately active.
66 Chapter 4 – Emergency<br />
To display the active recovery configuration data use the emergency show<br />
command.<br />
To avoid any misalignment between the configuration stored in the E2PROM and<br />
the configuration reported in the im.conf file, the following situation are managed<br />
during the system bootstrap:<br />
e2prom recovery config. data<br />
<br />
im.conf recovery config. data<br />
<br />
NOT AVAILABLE<br />
AVAILABLE<br />
NOT AVAILABLE NOTE 1. NOTE 2<br />
AVAILABLE NOTE 3. NOTE 4<br />
Note 1<br />
If the system restart in recovery m ode, the recovery application will then use<br />
the default configuration data coded into the recovery application.<br />
<br />
<br />
<br />
Note 2<br />
The e2prom recovery configuration data are removed and, if the system restart<br />
in recovery m ode, the recovery application will then use the default<br />
configuration data coded into the recovery application.<br />
Note 3<br />
The im.conf recovery configuration data are copied into the e2prom. In this<br />
way, if the system restart in recovery m ode, the recovery application will then<br />
use the same configuration data reported by the im.conf recovery configuration<br />
data.<br />
Note 4<br />
The im.conf recovery configuration data are copied into the e2prom overriding<br />
any previous configuration eventually present in the e2prom. In this way, if the<br />
system restart in recovery m ode, the recovery application will then use the<br />
same configuration data reported by the im.conf recovery configuration data.<br />
Emergency command reference<br />
This chapter describes the Emergency CLI module commands.<br />
Emergency CLI commands<br />
The table below lists the Emergency commands provided by the CLI:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 67<br />
COMMANDS<br />
EMERGENCY ADD<br />
EMERGENCY CREATE<br />
EMERGENCY DELETE<br />
EMERGENCY SET DHCP<br />
EMERGENCY SET IPINTERFACE GATEWAY<br />
EMERGENCY SET IPINTERFACE IPADDRESS<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
Table 4 – Emergency commands provided by the CLI<br />
EMERGENCY ADD<br />
Syntax<br />
EMERGENCY ADD VLAN PORT FRAME TAGGED<br />
Description<br />
This command add and tag an Ethernet port to the specified vlan. The vlan must<br />
be already defined in the Emergency module using the EMERGENCY CREATE<br />
VLAN command.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
vlan_id<br />
port_name<br />
The vlan identifier (VID) previously<br />
created with the EMERGENCY<br />
CREATE VLAN command. To display<br />
the existing vlan, use the EMERGENCY<br />
SHOW command.<br />
The name of an Ethernet port. Available<br />
values are: lan1, lan2, lan3 and lan4.<br />
N/A<br />
N/A<br />
Example<br />
emergency add vlan 2 port lan4 frame tagged<br />
See also<br />
EMERGENCY CREATE<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY CREATE<br />
Syntax<br />
EMERGENCY CREATE LAN <br />
Description<br />
This command define a new vlan on which will be attached the ip interface used to<br />
reach the system when running in recovery mode. Creating a new vlan requires
68 Chapter 4 – Emergency<br />
also the difinition of which Ethernet port must be tagged for this vlan. To add an<br />
Ethernet port to the new vlan, use the EMERGENCY ADD command.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
vlan_id<br />
The vlan identifier (VID) of the new<br />
vlan to be created. Only tagged frame<br />
with this VID will be processed by the<br />
upper layer (IP layer) when recovery<br />
application runs.<br />
N/A<br />
Example emergency create vlan 2<br />
See also<br />
EMERGENCY ADD<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY DELETE<br />
Syntax EMERGENCY DELETE VLAN [ PORT ]<br />
Description<br />
This command is used to delete an Ethernet port from a previously created vlan<br />
and delete any vlan different from the default. It’s not possible delete a vlan if an<br />
Ethernet port ia assigned to this vlan as tagged port. In this case it’s necessary<br />
delete first the Ethernet port with the command EMERGENCY DELETE VLAN<br />
PORT and then remove the vlan with the command EMERGENCY DELETE<br />
VLAN.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
vlan_id<br />
port_name<br />
The vlan identifier (VID) of the vlan<br />
used when recovery application runs.<br />
The name of an Ethernet port. Available<br />
values are: lan1, lan2, lan3 and lan4. To<br />
display the current tagged port<br />
configured in the emergency module,<br />
use the EMERGENCY SHOW<br />
command.<br />
N/A<br />
N/A<br />
Example<br />
emergency delete vlan 2 port lan4
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 69<br />
emergency delete vlan 2<br />
See also<br />
EMERGENCY ADD<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY SET DHCP<br />
Syntax EMERGENCY SET DHCP { ENABLE | DISABLE }<br />
Description<br />
This command is used to set the ip interface address used when the system runs in<br />
recovery mode to be dynamic or static. If the interface is set statically and no<br />
ipaddress is set with the command EMERGENCY SET IPINTERFACE command,<br />
the recovery default ip address 192.168.1.1/24 will be used.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
ENABLE<br />
DISABLE<br />
Set the recovery ip interface address<br />
dynamically. If no DHCP server is<br />
available or cannot be reached, the ip<br />
address will get an autoip address in<br />
the subnet 169.254.0.0.<br />
Turn off the dhcpclient on the recovery<br />
ip interface.<br />
N/A<br />
N/A<br />
Example<br />
emergency set dhcp enable<br />
See also<br />
EMERGENCY SET IPINTERFACE IPADDRESS<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY SET IPINTERFACE GATEWAY<br />
Syntax<br />
EMERGENCY SET IPINTERFACE GATEWAY <br />
Description<br />
This command set the default gateway ip address to be used when the system runs<br />
in recovery mode.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).
70 Chapter 4 – Emergency<br />
Option Description Default value<br />
ip_address<br />
The default gateway ipaddress in IPv4<br />
format (e.g. 192.168.1.254)<br />
N/A<br />
Example emergency set ipinterface gateway 192.168.1.254<br />
See also<br />
EMERGENCY SET IPINTERFACE<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY SET IPINTERFACE IPADDRESS<br />
Syntax<br />
EMERGENCY SET IPINTERFACE IPADDRESS NETMASK <br />
Description<br />
This command set the ip interface address and netmask to be used when the<br />
system runs in recovery mode.<br />
Options<br />
The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default value<br />
ip_address<br />
netmask<br />
The ip interface address in IPv4 format<br />
(e.g. 192.168.1.1)<br />
The ip interface netmask in IPv4 format<br />
(e.g. 255.255.255.0)<br />
N/A<br />
N/A<br />
Example<br />
emergency set ipinterface ipaddress 192.168.1.1 netmask<br />
255.255.255.0<br />
See also<br />
EMERGENCY SET IPINTERFACE GATEWAY<br />
EMERGENCY SHOW<br />
EMERGENCY UPDATE<br />
EMERGENCY SHOW<br />
Syntax<br />
EMERGENCY SHOW<br />
Description<br />
This command display the current emergency configuration settings. These<br />
settings are not active until the EMERGENCY UPDATE command is entered or the<br />
Residential Gateway configuration is saved and then the system is restarted.<br />
Example<br />
emergency show
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 71<br />
EMERGENCY CONFIGURATION<br />
- GENERAL PARAMETERS<br />
device ip address: 192.168.1.1<br />
device netmask: 255.255.255.0<br />
gateway ip address: 192.168.1.254<br />
vlan tag id: 2<br />
vlan tagged port: LAN4<br />
See also<br />
EMERGENCY UPDATE<br />
EMERGENCY UPDATE<br />
Syntax<br />
Description<br />
Example<br />
See also<br />
EMERGENCY UPDATE<br />
This command update the Residential Gateway e2prom with the new emergency<br />
configuration data. To display the current emergency configuration settings use<br />
the EMERGENCY SHOW command.<br />
emergency update<br />
EMERGENCY SHOW
72 Chapter 5 – IP<br />
Chapter 5<br />
IP<br />
INTRODUCTION<br />
This chapter describes the main features of the Internet Protocol (IP) and how to<br />
configure and operate the AT-RG613, AT-RG623 and AT-RG656 IP interface.<br />
IP protocols are widely used and available on nearly all hosts and PC systems. They<br />
provide a range of services including remote login, file transfer and Email.<br />
THE INTERNET<br />
The Internet (with a capital “I”) is the name given to the large, worldwide network<br />
of networks based on the original concepts of the ARPAnet. A large number of<br />
government, academic and commercial organizations are connected to the Internet,<br />
and use it to exchange traffic such as Email. The Internet uses the TCP/IP protocols<br />
for all routing. In recent times the term Internet (with a lowercase “i”) has also come<br />
to refer to any network (usually a wide area network), which utilizes the Internet<br />
Protocol. The remainder of this chapter will concentrate on the latter definition, i.e.<br />
that of a generalized network which uses IP as the transport protocol.<br />
The basic unit of data sent through an Internet is a packet or datagram. An IP<br />
network functions by moving packets between routers and/or hosts. A packet<br />
consists of a header followed by the data (see Figure 5 and Table 5). The header<br />
contains the information necessary to move the packet across the Internet. It must be<br />
able to cope with missing and duplicated packets as well as possible fragmentation<br />
(and reassembly) of the original packet.<br />
Packets are sent using a connectionless transport mechanism. A connection is not<br />
maintained between the source and destination addresses; rather, the destination<br />
address is placed in the header and the packet is transmitted on a best effort basis. It<br />
is up to the intermediate systems (routers and gateways) to deliver the packet to the<br />
correct address, using the information in the header.<br />
Successive packets may take different routes through the network to the destination.<br />
There is a strong analogy with the postal delivery system in that letters are placed in<br />
individually addressed envelopes and put into the system in the ‘hope’ that they
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 73<br />
will arrive. Like an Internet, the postal system is very reliable. In an Internet, higher<br />
layers (such as TCP and Telnet) are responsible for ensuring that packets are<br />
delivered in a reliable and sequenced way.<br />
In contrast to a connectionless transport mechanism, a connection-oriented<br />
transport mechanism requires a connection to be maintained between the source<br />
and destination for as long as necessary to complete the exchange of packets<br />
between source and destination. X.25 is an example of a connection-oriented<br />
protocol. A good analogy to X.25 would be a telephone call, in which both parties<br />
verify that they are talking to the correct person before exchanging highly<br />
sequenced data (if both talk at once then nothing intelligible results!), and the<br />
connection is maintained until both parties have finished talking. Its not hard to<br />
imagine the chaos if the telephone system delivered words in the wrong order.<br />
1<br />
2<br />
3<br />
0 1 2 3 4 5 6 7 8 9<br />
0 1 2 3 4 5 6 7 8 9<br />
0 1 2 3 4 5 6 7 8 9<br />
0 1<br />
Version IHL TOS Total Length<br />
Identification flags fragment offset<br />
TTL Protocol Header Checksum<br />
Source IP Address<br />
Destination IP Address<br />
User Data<br />
Figure 5. IP packet or datagram.<br />
Field<br />
Ver<br />
IHL<br />
Type of service<br />
Total length<br />
Identification<br />
Flags<br />
Fragment offset<br />
Time to live<br />
Protocol<br />
Header checksum<br />
Function<br />
The version of the IP protocol that created the datagram.<br />
The length of the IP header in 32-bit words (the minimum<br />
value is 5).<br />
The quality of service (precedence, delay, throughput, and<br />
reliability) desired for the datagram.<br />
The length of the datagram (both header and user data), in<br />
octets.<br />
A 16-bit value assigned by the originator of the datagram,<br />
used during reassembly<br />
Control bits indicating whether the datagram may be<br />
fragmented, and if so, whether other later fragments exist<br />
The offset in the original datagram of the data being carried<br />
in this datagram, for fragmented datagrams<br />
The time in seconds the datagram is allowed to remain in<br />
the Internet system<br />
The high level protocol used to create the message<br />
(analogous to the type field in an Ethernet packet)<br />
A checksum of the header
74 Chapter 5 – IP<br />
Source IP address<br />
Destination IP<br />
address<br />
Options<br />
Padding<br />
User data<br />
32-bit IP address of the sender<br />
32-bit IP address of the recipient<br />
An optional field primarily used for network testing or<br />
Debugging.<br />
All bits set to zero—used to pad the datagram header to a<br />
length that is a multiple of 32 bits.<br />
The actual data being sent.<br />
Table 5. Functions of the fields in an IP datagram.<br />
ADDRESSING<br />
Internet addresses are fundamental to the operation of the TCP/IP Internet.<br />
Each packet must contain an Internet address to determine where to send the<br />
packet. Most packets also require a source address so that the sender of the packet is<br />
known. Addresses are 32-bit quantities which are logically divided into fields. They<br />
must not be confused with physical addresses (such as an Ethernet address); they<br />
serve only to address Internet Protocol packets.<br />
Addresses are organised into five classes (see Table 6).<br />
Class<br />
Maximum number of possible<br />
networks<br />
A 127 16,777,216<br />
B 16,384 65,536<br />
C 2,097,152 255<br />
Maximum number of hosts per<br />
network<br />
D<br />
E<br />
Reserved Class<br />
Reserved Class<br />
Table 6. Internet Protocol address classes and limits on numbers of networks and<br />
hosts.<br />
Each class differs in the number of bits assigned to the host and network portions of<br />
the address (Figure 6).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 75<br />
1 7 24<br />
CLASS A<br />
0 NETWORK HOST<br />
1 1 14 16<br />
CLASS B<br />
1<br />
0 NETWORK HOST<br />
1 1 1 21 8<br />
CLASS C<br />
110 NETWORK HOST<br />
Figure 6. Subdivision of the 32 bits of an Internet address into network and host<br />
fields for class A, B and C networks.<br />
The addressing scheme is designed to allow routers to efficiently extract the host<br />
and network portions of an address. In general a router is only interested in the<br />
network portion of an address.<br />
Class A sets the Most Significant Bit (MSB) to 0 and allocates the next 7 bits to define<br />
the network and the remaining 24 bits to define the host. Class B sets the two MSBs<br />
to 10 and allocates the next 14 bits to designate the network while the remaining 16<br />
refer to the host. Class C sets the three MSBs to ‘110’ and allocates the next 21 bits to<br />
designate the network while the remaining 8 are left to the user to assign as host or<br />
subnet numbers.<br />
The term host refers to any attached device on a subnet, including PCs, mainframes<br />
and routers. Most hosts are connected to only one network. In other words they<br />
have a single IP address. Routers are connected to more than one network and can<br />
have multiple IP addresses. The IP address is expressed in dotted decimal notation<br />
by taking the 32 binary bits and forming 4 groups of 8 bits, each separated by a dot.<br />
For example:<br />
10.4.8.2 is a class A address<br />
10 is the DDN assigned network number<br />
.4.8 are (possibly) user assigned subnet numbers<br />
.2 is the user assigned host number<br />
172.16.9.190 is a class B address<br />
172.16 is the DDN assigned network number<br />
.9 is the user assigned subnet number<br />
.190 is the user assigned host number<br />
The value 0.0.0.0 is used to define the default address, while a value of all ones in<br />
any host portion (i.e. 255) is reserved as the broadcast address. Some older versions<br />
of UNIX use a broadcast value of all zeros, therefore both the value ‘0’ and the value<br />
‘255’ are reserved within any user assigned host portion. The address 172.16.0.0<br />
refers to any host (not every host) on any subnet within the class B address 172.16.
76 Chapter 5 – IP<br />
Similarly 172.16.9.0 refers to any host on subnet 9, whereas 172.16.9.255 is a packet<br />
addressed to every host on subnet 9. The router uses this terminology to indicate<br />
where packets are to be sent.<br />
An address with ‘0’ in the host portion refers to ‘this particular host’ while an<br />
address with ‘0’ in the network portion refers to ‘this particular network’. As<br />
mentioned above a value of all ‘1’ (255) is a broadcast. To reduce loading, IP<br />
consciously tries to limit broadcasts to the smallest possible set of hosts, hence most<br />
broadcasts are ‘directed’. For example 172.16.56.255 is a broadcast to subnet 56 of<br />
network 172.16. A major problem with the IP type of addressing is that it defines<br />
connections not hosts. A particular address, although it is unique, defines a host by<br />
its connection to a particular network. Therefore if the host is moved to another<br />
network the address must also change. The situation is analogous to the postal<br />
system. A related problem can occur when an organisation which has a class C<br />
address finds that they need to upgrade to class B. This involves a total change of<br />
every address for all hosts and routers. Thus the addressing system is not scalable.<br />
Subnets<br />
Related to the two issues discussed above, the rapid growth of the Internet has<br />
meant a proliferation in the number of addresses which must be handled by the core<br />
routers. More addresses means more loading and tends to slow the system down.<br />
This is overcome by minimising the number of network addresses by sharing the<br />
same IP prefix (the assigned network number) with multiple physical networks.<br />
Generally these would all be within the same organisation, although this is not a<br />
requirement. There are two main ways of achieving this; Proxy ARP and subnetting.<br />
Proxy ARP will be discussed later in this section.<br />
A subnet is formed by taking the host portion of the assigned address and dividing<br />
it into two parts. The first part is the ‘set of subnets’ while the second refers to the<br />
hosts on each subnet. For example the DDN may assign a class B address as<br />
172.16.0.0. The system manager would then assign the lower two octets in some way<br />
which makes sense for this particular network. A common method for class B is to<br />
simply use the higher octet to refer to the subnet. Thus there are 254 subnets (0 and<br />
255 are reserved) each with 254 hosts. These subnets need not be physically on the<br />
same media. Generally they would be allocated geographically with subnet 2 being<br />
one site, subnet 3 another and so on. Some sites may have a requirement for<br />
multiple subnets on the same LAN.<br />
This could be to increase the number of hosts or simply to make administration<br />
easier. In this case it is normal (but not required) that the subnets be assigned<br />
contiguously for this site. This makes the allocation of a subnet mask easier.<br />
This mask is needed by the routers to ascertain which subnets are available at each<br />
site. Bits in the mask are set to ‘1’ if the router is to treat the corresponding bit in the<br />
IP address as belonging to the network portion or set to ‘0’ if it belongs to the host<br />
portion. This allows a simple bit-wise logical AND to determine if the address<br />
should be forwarded or not. Although the standard does not require that the subnet<br />
mask must select contiguous bits, it is normal practice to do so. To do otherwise can<br />
make the allocation of numbers rather difficult and prone to errors.<br />
Some example masks are:<br />
11111111.11111111.11111111.00000000 = 255.255.255.0<br />
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 77<br />
This would give 254 subnets on a class B network, each with 254 hosts.<br />
11111111.11111111.11111111.11110000 = 255.255.255.240<br />
<br />
This would give 4094 subnets on a class B network, each with 14 hosts or, 14 subnets<br />
on a class C network each with 14 hosts.<br />
IP SUPPORT ON AT-RG6XX RESIDENTIAL GATEWAY SERIES<br />
In order to use the IP stack, one or more interfaces must be added to the IP stack and<br />
attached to a transport.<br />
Each interface must be configured with an IP address and a subnet mask. Together,<br />
these define the range of addresses which can be reached via the interface without<br />
passing through any other routers.<br />
Each interface (real and virtual) must have a unique subnet; the range of addresses<br />
on each interface must not overlap with any other interface. In situations where<br />
there is no local subnet associated with an interface, unnumbered interfaces may be<br />
used.<br />
Adding and attaching IP interfaces<br />
IP interfaces are added and attached using the commands provided in the ip and<br />
ethernet module respectively.<br />
IP interfaces use typically the services provided by ethernet transports. Ethernet<br />
transport is an abstraction layer used to classify the format of the IP packets that will<br />
be transferred through the network. Another type of transport is, for example, is<br />
pppoe. Packets trasmitted through a pppoe connection or ethernet connection will<br />
have different frame format even if the convey the same type of information to the<br />
IP layer.<br />
Because the system support VLANs, the same ethernet port can be shared between<br />
different VLANs. Therefore itʹs not possible map an ethernet transport directly to a<br />
physical ethernet port.<br />
Instead ethernet transports are mapped to VLANs that from a logical point of view<br />
they act like an ethernet segment as an ethernet port would do in a simple system<br />
without VLANs<br />
To attach an ethernet transport to the Residential Gateway the following steps must<br />
be performed:<br />
Create an ethernet transport using the command:<br />
ethernet add transport eth1 myvlan<br />
Create an interface to the IP stack: using, for example, the command:<br />
ip add interface ip1 192.168.101.2 255.255.255.0<br />
Attach the transport to the interface using the command:<br />
ip attach ip1 eth1
78 Chapter 5 – IP<br />
IP stack and incoming packets<br />
When a packet arrives on an IP interface, the IP stack determines whether:<br />
• the packet should be received locally;<br />
• the packet should be forwarded to another interface<br />
Locally received packets<br />
A packet will be received locally if:<br />
• the destination address of the packet matches any of the IP stack interface<br />
addresses (real or virtual interface, primary or secondary addresses).<br />
• the packet is a broadcast.<br />
• the packet is a multicast to a group that the IP stack belongs to.<br />
• the packet has the Router Alert option set.<br />
The packet is either processed internally within the IP stack (for example, ICMP or<br />
IGMP control messages), or passed up to an application via the appropriate protocol<br />
processing (for example, TCP or UDP data).<br />
For a local application to successfully send a packet back to another host, the IP<br />
stack must be able to find a suitable route to that host.<br />
Forwarding packets<br />
If the IP stack determines that a packet is not destined to be received locally, it will<br />
try to forward the packet. The packet will be forwarded if:<br />
• the destination of the packet can be reached directly via any of the IP stack’s<br />
interfaces.<br />
• a route has been added, either manually or by a routing protocol, specifying a<br />
suitable gateway via which that destination may be reached.<br />
Several address tests are applied before forwarding a packet, for example to prevent<br />
broadcast packets from being forwarded. For more information about these tests,<br />
see RFC1122: Requirements for Internet - Hosts (section 3.2).<br />
If the packet cannot be forwarded, an ICMP “Destination Unreachable” error will be<br />
returned to the sender.<br />
By default, the checksum of forwarded IP packets is not checked. This is for reasons<br />
of efficiency, because calculating the checksum on all packets adds significantly to<br />
the forwarding time and reduces throughput. This default setting is common in<br />
most IP routers. Locally terminated packets always have their checksum checked.<br />
Unconfigured interfaces<br />
An interface with an IP address of 0.0.0.0 is unconfigured. An interface is added as<br />
unconfigured when it is to be configured at a later time, for example, by IPCP or<br />
DHCP.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 79<br />
No traffic will be forwarded from an unconfigured interface. However, an<br />
unconfigured interface may still receive certain types of traffic, such as responses to<br />
DHCP requests.<br />
An unconfigured interface should not be confused with an unnumbered interface.<br />
Unnumbered interfaces<br />
In a routed network, consider two routers that are joining two different subnets via<br />
a point-to-point link. It would usually be necessary to allocate a whole subnet just<br />
for the link between the routers, in addition to the other two subnets.<br />
An unnumbered interface does not have a subnet associated with it and simply<br />
serves as one end of a point-to-point link. An unnumbered link does not have an IP<br />
address, but a router id which is the IP address of one of the router’s other interfaces.<br />
You can have multiple unnumbered interfaces as long as you have at least one<br />
normal (numbered) IP interface in your router so that you can use its IP address as<br />
the router id. The unnumbered interfaces can either use different router id values, or<br />
use the same router id value. Whatever their value, the router id(s) must match the<br />
address of a normal interface.<br />
<br />
Unnumbered interfaces can only be used on point-to-point links. This includes<br />
PPP. You cannot use unnumbered interfaces with Ethernet<br />
Unconfigured interfaces v unnumbered interfaces<br />
An unnumbered interface is not the same as an unconfigured interface.<br />
An unconfigured interface is created by adding an interface without specifying an<br />
IP address (ip add interface myinterface), or by specifying an IP address of 0.0.0.0 (ip<br />
add interface myinterface 0.0.0.0).<br />
You would add an unconfigured interface if the interface address were to be set<br />
automatically later, for example, by IPCP or DHCP. It cannot be used for normal<br />
traffic.<br />
An unnumbered interface is different - it is used for normal traffic but does not have<br />
its own IP address or a local subnet associated with it.<br />
Configuring unnumbered interfaces<br />
Unnumbered interfaces are created using the following CLI command:<br />
ip add interface 255.255.255.255<br />
For example:<br />
ip add interface myinterface 192.168.101.3 255.255.255.255<br />
In this command:<br />
• myinterface is the unnumbered interface name.<br />
• 192.168.101.3 is the router id. The router id must be set to the IP address of<br />
one of the router’s normal interfaces. The main use of the router id is as the source<br />
address for packets sent on an unnumbered interface from local applications or
80 Chapter 5 – IP<br />
routing protocols. Router IDs are described in RFC1812 “Requirements for IP v4<br />
Routers”.<br />
• 255.255.255.255 is a special subnet mask that identifies an unnumbered<br />
interface and distinguishes it from any other type of interface.<br />
You must also add a route before your unnumbered interface can send packets.<br />
Creating a route<br />
Because an unnumbered interface does not have a local subnet associated with it, no<br />
packets can be routed to an unnumbered interface until a route is added. Let us just<br />
consider how this is done.<br />
Usually, for ethernet interface, routes are added with a gateway to be used for a<br />
particular destination.<br />
For example:<br />
ip add route myroute 10.0.0.0 255.0.0.0 gateway 192.168.101.10<br />
This means that all packets for the 10.0.0.0 subnet will be sent to the address<br />
192.168.101.10 as their next hop. The gateway must be reachable directly, so<br />
192.168.101.10 must be on a subnet served by one of the local interfaces.<br />
But, for point-to-point links, you can add a route through the interface, without<br />
specifying a gateway address, for example:<br />
ip add route myroute 10.0.0.0 255.0.0.0 interface myinterface<br />
All packets for the specified destination will be sent via the unnumbered interface<br />
called myinterface. This type of route can be used for all interfaces with point-topoint<br />
links, not just unnumbered interfaces.<br />
Virtual Interfaces<br />
Usually, each transport only has one router interface associated with it,and each<br />
router interface has only one IP address and local subnet associated with.<br />
Virtual interfaces allow you to attach more than one IP interface to the same<br />
transport. Secondary IP addresses allow you to associate more than one IP address<br />
with the same IP interface. Together, these features allow many configurations<br />
which would not otherwise be possible.<br />
Virtual interfaces allow you to create multiple router interfaces on the same<br />
transport, for example, on the same Ethernet port. This allows the IP stack to<br />
communicate with and route between multiple subnets existing on the same LAN.<br />
Configuring virtual interfaces<br />
To configure a virtual interface you need to create an IP interface, but instead of<br />
attaching it to a transport, you need to attach it to a second IP interface that already<br />
has a transport attached to it.<br />
In this way, the two interfaces share the transport that is only attached to one of the<br />
interfaces.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 81<br />
The original interface attached directly to a transport is called the real interface, and<br />
the interface that is attached to the real interface is called the virtual interface.<br />
To configure a virtual interface using the CLI:<br />
(i) Create the real interface, then create an Ethernet transport and attach the IP<br />
interface to the transport:<br />
ip add interface real_ip 192.168.101.2 255.255.255.0<br />
ethernet add transport eth1 myvlan<br />
ip attach real_ip eth1<br />
(ii) Create the virtual interface:<br />
ip add interface virtual_ip 192.168.50.10 255.255.255.0<br />
(iii) Attach the virtual interface to the real interface:<br />
ip attachvirtual virtual_ip real_ip<br />
You can add more than one virtual interface to the same real interface.<br />
Virtual interfaces are created by attaching them to a real interface instead of directly<br />
to a transport. If the real interface is deleted, then all associated virtual interfaces are<br />
detached automatically.<br />
Similarities between virtual interfaces and real<br />
interfaces<br />
A virtual interface is similar to a real interface:<br />
• virtual interfaces may be manipulated in the same way as real interfaces using the<br />
CLI.<br />
• the IP stack will route between virtual interfaces and real interfaces in the same<br />
way that it routes between real interfaces.<br />
<br />
Like real interfaces, virtual interfaces must have a unique subnet which does not<br />
overlap with other interfaces. In order to have the router respond to more than<br />
one IP address on the same subnet, secondary addresses must be used instead<br />
of virtual interfaces.<br />
Differences between virtual interfaces and real<br />
interfaces<br />
When the IP stack receives a packet from a transport that has associated virtual<br />
interfaces, the IP stack must decide which interface the packet arrived on.<br />
The source address of the incoming packet is compared with the subnet of each<br />
virtual interface on that transport. If there is no match, the IP stack assumes that the<br />
packet arrived on the real interface.<br />
The interface that the packet arrived on is important in two scenarios:<br />
• When the Firewall is in use - different rules (such as policies, portfilters and<br />
validators) are configured between different interfaces, so you need to know<br />
which interfaces the packet passes between.
82 Chapter 5 – IP<br />
• Some applications are written to only respond to traffic received on a specific<br />
interface. For example, DHCP server.<br />
Because the traffic for all virtual interfaces is received in the same way as the real<br />
interface, the only reasonable way of selecting an interface is based on source<br />
address as described above. This means that:<br />
• A virtual interface only receives packets with a source address matching its<br />
interface subnet, providing packets arrive via the real interface that the virtual<br />
interface is attached to.<br />
• Packets that arrive with a source address that does not match a local subnet are<br />
deemed to have been received on the real interface, even if the next hop would be<br />
reached through the virtual interface when sending to that destination.<br />
• Any packets from an unconfigured host, for example DHCP or BOOTP requests,<br />
are deemed to be received on the real interface.<br />
<br />
Remember that the source address of the packet can be spoofed by the sender,<br />
therefore security-related decisions should not be based on the ability to<br />
distinguish between virtual interfaces on the same transport.<br />
Secondary IP addresses<br />
Secondary IP addresses differ from virtual interfaces because there is no concept of a<br />
separate local subnet associated with a secondary address.<br />
The secondary addresses share the same subnet with the interface.<br />
Secondary addresses therefore allow the IP stack to have more than one address on<br />
the same subnet. After setting the main interface address, one or more additional<br />
addresses on the same subnet can be added to the interface.<br />
Configuring secondary IP addresses<br />
You can create and configure secondary IP addresses using the CLI.<br />
The following CLI commands allow you to create and configure secondary IP<br />
addresses:<br />
ip interface add secondaryipaddress<br />
ip interface clear secondaryipaddresses<br />
ip interface delete secondaryipaddress<br />
ip interface list secondaryipaddresses<br />
<br />
The ability to specify a subnet mask with a secondary address is superseded by<br />
the functionality of virtual interfaces. You should use virtual interfaces instead.<br />
Support for adding secondary IP addresses including subnet mask specification will<br />
be withdrawn in a future software release.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 83<br />
Functionality of secondary IP addresses<br />
On Ethernet interfaces, secondary IP addresses must be on the same subnet as the<br />
interface. Secondary addresses may be added to virtual interfaces, as well as real<br />
interfaces.<br />
On Point-to-Point links, secondary addresses may be added on a different subnet to<br />
the main interface address. This will provide an additional address which the IP<br />
stack will respond to for traffic arriving on that interface, but with no associated<br />
local subnet.<br />
This is similar to configuring a virtual interface as an unnumbered interface. This is<br />
not a common configuration.<br />
IP Quality of Service<br />
The IP stack includes features which enable different levels of service to be provided<br />
to different classes of routed traffic.<br />
Currently, two traffic classes are offered:<br />
• the Expedited traffic class<br />
• the Default (or Best-effort) traffic class<br />
Expedited class<br />
The Expedited class differs in two ways from the default level of service:<br />
• Lower packet loss; in overload conditions (where there is more traffic than the IP<br />
stack can route) packets from the default traffic class will be dropped in<br />
preference to packets from the expedited traffic class.<br />
• Lower latency; network traffic tends to arrive in bursts; the IP stack ensures that<br />
the latency of expedited traffic is reduced to a minimum by never queuing<br />
packets in the expedited traffic class behind packets in the default traffic class.<br />
These features are applicable to both forwarded and locally terminated traffic.<br />
Example of use of Prioritization<br />
• When forwarding traffic between interfaces where one or more interface has a<br />
limited bandwidth, certain classes of traffic can be given priority over other types<br />
of traffic.<br />
The IP stack is routing traffic between a fast Ethernet LAN and a limitedbandwidth<br />
WAN connection. One or more devices on the LAN wish to send<br />
voice over IP (VoIP) traffic over the WAN connection. It is important that the<br />
VoIP traffic has low packet loss and latency, even when other devices are also<br />
sending traffic to the WAN connection at the same time. The IP stack can ensure<br />
that the VoIP traffic is given preference to other types of traffic.<br />
• The architecture of the IP stack can enable specially written local applications to<br />
receive an enhanced level of service compared to other applications, and<br />
compared to other classes or forwarded traffic For example, the Residential
84 Chapter 5 – IP<br />
Gateway provides routing to a LAN as well as terminating VoIP traffic. The IP<br />
stack can ensure that the VoIP application can send and receive packets with low<br />
packet loss and low latency even in the presence of other routed traffic, or traffic<br />
to other applications (like DHCP server, Firewall, etc).<br />
Quality of Service support<br />
There are three components to the Quality of Service support:<br />
• packet classification<br />
• link bandwidth prioritization<br />
• CPU prioritization<br />
Only packet classification can be configured by CLI.<br />
Packet Classification<br />
When the IP stack first receives a packet, it is passed to the classifier.<br />
The classifier is also known as the Flow Qualifier.<br />
The classifier’s job is to examine certain fields in each IP packet and assign a specific<br />
Quality of Service Class to the packet. As mentioned before, there are currently two<br />
Quality of Service Classes: Expedited and Default.<br />
Packets are assumed to be in the Default class unless they match a specific rule<br />
added to the classifier.<br />
Each rule states that values must be present in fields in order for the packet to be<br />
classified as Expedited. The following fields can be examined:<br />
• the TOS (Type of Service) / DS (Differentiated Services) field in the IP header. This<br />
field may be set by the IP stack originating the packet if the application has<br />
requested it, or by a previous router which has already classified the packets and<br />
marked them using this field.<br />
• The IP Protocol, or the IP Protocol and TCP/UDP source and/or destination port<br />
numbers. In cases where the packets cannot be identified by their TOS/DS field,<br />
rules may be added to identify certain traffic sent to or from certain applications<br />
by the TCP or UDP source and/or destination port numbers, or just by IP<br />
protocols.<br />
• The source IP address. This is usually used in conjunction with the fields<br />
described above. For example, when used in conjunction with checking the<br />
TOS/DS field, this would ensure that only certain hosts could receive expedited<br />
service, other hosts would be ignored even if they set the correct values in the<br />
TOS/DS field.<br />
Rules are added to the classifier separately for each IP Interface. The classifier<br />
configuration on an interface only affects packets arriving on that interface, not<br />
packets forwarded to that interface.<br />
Configuring Flow Qualifiers<br />
To create and configure qualifier rules using the CLI, use the commands described<br />
in this section.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 85<br />
To classify packets based on a specified protocol, use the following command. If the<br />
protocol you specify is TCP or UDP, you can also base the flow qualifier on the<br />
source and destination port of incoming packets:<br />
ip interface add fq protocol<br />
You can also classify packets based on the protocol and the source address of<br />
incoming packets, using:<br />
ip interface add fq srcaddr protocol<br />
To classify packets based on both the source address of incoming packets, and the<br />
DS (Differentiated Services) codepoint field of each IP packet header, use the<br />
command:<br />
ip interface add fq srcaddr codepoint<br />
To classify packets based on the DS (Differentiated Services) field only, use the<br />
command:<br />
ip interface add fq codepoint<br />
Once you have created flow qualifier rules, you can configure them using the<br />
following CLI commands:<br />
ip interface clear fqs<br />
ip interface delete fq<br />
ip interface list fqs<br />
Link bandwidth prioritization<br />
If you are routing from an interface on a high speed link, such as Ethernet, to an<br />
interface on a low speed link, such as DSL, the router may forward more traffic from<br />
the Ethernet interface to the DSL interface than can be transmitted.<br />
When a packet is received, the classifier assigns a QoS class to it (Expedited or<br />
Default). When the IP stack sends a packet to a device driver, it marks the packet<br />
with a priority that is to be used during packet transmission. The QoS class<br />
determines what priority the packet is given. The device driver itself is responsible<br />
for prioritizing the transmission of packets.<br />
The device driver will handle expedited traffic differently from default traffic in two<br />
ways:<br />
• When traffic is queued for transmission, expedited traffic must be queued ahead<br />
of default traffic. This ensures that expedited traffic is not delayed by best-effort<br />
traffic while awaiting transmission.<br />
• When traffic is queued for transmission, the number of packets of default traffic<br />
on the queue must be limited. This ensures that when default traffic is sent to the<br />
interface faster than it can be transmitted, the default packets are discarded. This<br />
is necessary in order to prevent the system from running out of buffers, which<br />
would make them unavailable for use by expedited traffic.<br />
CPU prioritization<br />
The CPU resources of the system may be constrained in certain circumstances, for<br />
example:
86 Chapter 5 – IP<br />
• constrained throughput; the speed of the interfaces may be so fast that packets are<br />
sent to the IP stack faster than it can route them. Under heavy traffic, the<br />
throughput of the IP stack may be constrained by the amount of available<br />
processing power.<br />
• application resource requirements; other applications that run on the same processor<br />
as the router may consume a significant amount of CPU (for example, if a user is<br />
retrieving pages from the embedded webserver). Here, there may be enough CPU<br />
to route all packets, but you do not want individual packets to be delayed while<br />
another process is running, because this added latency would be apparent when<br />
making VoIP calls.<br />
To ensure that CPU resources are available to preferentially handle expedited<br />
traffic, the system incorporates the following features:<br />
• Process priorities; these are used to ensure that tasks handling expedited traffic run<br />
at a higher priority than the rest of the system. For example, device drivers and<br />
encapsulation protocols, certain parts of the IP stack, and local VoIP applications<br />
run at a higher priority compared to the rest of the system.<br />
• Division of tasks; The IP stack is split into separate tasks, with a division between:<br />
• the part of the stack that quickly makes the routing decision and forwards<br />
traffic between interfaces<br />
• and the part of the stack which performs more lengthy but less time-critical<br />
tasks (such as TCP, ICMP and ARP protocol processing).<br />
This ensures lower latency for expedited traffic.<br />
• Post-classification priority processing; after classification, packets are processed in<br />
priority order within the forwarding path. This not only ensures that expedited<br />
packets are still handled even under CPU overload conditions, but also reduces<br />
the adverse effect on latency of best-effort traffic bursts that arrive immediately<br />
before an expedited packet.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 87<br />
TCP/IP Command <strong>Reference</strong><br />
This section describes the commands available on the Residential Gateway to<br />
manage the TCP/IP module.<br />
IP Tracing commands<br />
You can carry out tracing in the IP stack using the following system commands:<br />
• SYSTEM LOG ENABLE|DISABLE; enables/disables the tracing support output<br />
for a specific module and category.<br />
• SYSTEM LOG LIST; displays the tracing options for the modules available in the<br />
current image.<br />
IP CLI commands<br />
The table below lists the IP commands provided by the CLI:<br />
Command<br />
IP ADD DEFAULTROUTE GATEWAY<br />
IP ADD DEFAULTROUTE INTERFACE<br />
IP ADD INTERFACE<br />
IP ADD ROUTE<br />
IP ATTACH<br />
IP ATTACH VIRTUAL<br />
IP CLEAR ARPENTRIES<br />
IP CLEAR INTERFACES<br />
IP CLEAR RIPROUTES<br />
IP CLEAR ROUTES<br />
IP DELETE INTERFACE<br />
IP DELETE ROUTE<br />
IP DETACH INTERFACE<br />
IP INTERFACE ADD FQ CODEPOINT<br />
IP INTERFACE ADD FQ PROTOCOL<br />
IP INTERFACE ADD FQ SRCADDR CODEPOINT<br />
IP INTERFACE ADD FQ SRCADDR PROTOCOL<br />
IP INTERFACE ADD PROXYARPENTRY<br />
IP INTERFACE ADD PROXYARPEXCLUSION<br />
IP INTERFACE ADD SECONDARYIPADDRESS<br />
IP INTERFACE CLEAR FQS<br />
IP INTERFACE CLEAR PROXYARPENTRIES
88 Chapter 5 – IP<br />
IP INTERFACE CLEAR SECONDARYIPADDRESS<br />
IP INTERFACE DELETE FQ<br />
IP INTERFACE DELETE PROXYARPENTRIES<br />
IP INTERFACE DELETE PROXYARPEXCLUSION<br />
IP INTERFACE DELETE<br />
SECONDARYIPADDRESS<br />
IP INTERFACE LIST FQS<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
IP INTERFACE LIST SECONDARYIPADDRESSES<br />
IP LIST ARPENTRIES<br />
IP LIST CONNECTIONS<br />
IP LIST INTERFACES<br />
IP LIST RIPROUTES<br />
IP LIST ROUTES<br />
IP PING<br />
IP SET INTERFACE DHCP<br />
IP SET INTERFACE IPADDRESS<br />
IP SET INTERFACE MTU<br />
IP SET INTERFACE NETMASK<br />
IP SET INTERFACE RIP ACCEPT<br />
IP SET INTERFACE RIP MULTICAST<br />
IP SET INTERFACE RIP SEND<br />
IP SET INTERFACE TCPMSSCLAMP<br />
IP SET INTERFACE RIP SEND<br />
IP SET RIP ADVERTISEDEFAULT<br />
IP SET RIP AUTHENTICATION<br />
IP SET RIP DEFAULTROUTECOST<br />
IP SET RIP HOSTROUTES<br />
IP SET RIP PASSWORD<br />
IP SET RIP POISON<br />
IP SET ROUTE COST<br />
IP SET ROUTE DESTINATION<br />
IP SET ROUTE GATEWAY<br />
IP SET ROUTE INTERFACE<br />
IP SHOW
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 89<br />
IP SHOW DEBUGINFO<br />
IP SHOW INTERFACE<br />
IP SHOW ROUTE<br />
IP ADD DEFAULTROUTE GATEWAY<br />
Syntax IP ADD DEFAULTROUTE GATEWAY <br />
Description This command creates a default route. It acts as a shortcut command that can be<br />
used instead of typing the following:<br />
ip add route default 0.0.0.0 0.0.0.0 gateway 192.168.103.3<br />
<br />
Itʹs possible to create only one default route.<br />
A default route will not be created if a default route has already been created using<br />
the IP ADD ROUTE command or the IP ADD DEFAULTROUTE INTERFACE command.<br />
To have RIP advertise a default route with a default cost metric, see THE IP SET RIP<br />
ADVERTISEDEFAULT and IP SET RIP DEFAULTROUTECOST commands.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable)<br />
Option Description Default Value<br />
gateway_ip<br />
The IP address of the gateway that this<br />
route will use by default, displayed in the<br />
IPv4 format (e.g. 192.168.102.3)<br />
N/A<br />
Example --> ip add defaultroute gateway 192.168.103.3<br />
See also IP ADDROUTE<br />
IP ADD DEFAULT ROUTE INTERFACE<br />
IP ADD DEFAULTROUTE INTERFACE<br />
Syntax IP ADD DEFAULTROUTE INTERFACE <br />
Description This command creates a default route. It acts as a shortcut command that can be<br />
used instead of typing the following:<br />
ip add route default 0.0.0.0 0.0.0.0 interface ip3<br />
<br />
A default route will not be created if a default route has already been created<br />
using the IP ADD ROUTE command or the IP ADD DEFAULTROUTE<br />
INTERFACE command.
90 Chapter 5 – IP<br />
To have RIP advertise a default route with a default cost metric, see the IP SET RIP<br />
ADVERTISEDEFAULT and IP SET RIP DEFAULTROUTECOST commands.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable)<br />
Option Description Default Value<br />
interface<br />
The name of the existing interface that this<br />
route will use. To display interface names,<br />
use the IP LIST INTERFACES command.<br />
N/A<br />
Example --> ip add defaultroute interface ip3<br />
See also IP ADDROUTE<br />
IP ADD DEFAULT ROUTE GATEWAY<br />
IP ADD INTERFACE<br />
Syntax IP ADD INTERFACE [ ]<br />
Description This command adds a named interface and optionally sets its IP address. The IP<br />
address is not mandatory at this stage, but if it is not specified in this command, the<br />
interface will be unconfigured. There are three ways that the IP address can be set<br />
later:<br />
• using the ip set interface ipaddress command<br />
• it is possible to set the interface to obtain its configuration via Dynamic Host<br />
Configuration Protocol (DHCP) using the IP SET INTERFACE DHCP ENABLED<br />
command. By default, DHCP is disabled.<br />
• the interface can obtain its IP configuration via PPP IPCP (Internet Protocol<br />
Control Protocol) negotiation. See PPPoE CLI commands<br />
The IP stack automatically creates a loopback interface for address 127.0.0.1 subnet<br />
mask 255.255.255.0. This interface is not displayed by the IP LIST INTERFACES<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ipaddress<br />
An arbitrary name that identifies the IP<br />
interface. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
The IP address of the interface displayed in<br />
the IPv4 format (e.g. 192.168.102.3)<br />
If the IP address is set to the special value<br />
0.0.0.0, the interface is marked as<br />
unconfigured. This value is used when the<br />
N/A<br />
0.0.0.0
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 91<br />
interface address is obtained automatically.<br />
For unnumbered interface, the IP address<br />
parameter is used to specify the router-id of<br />
the interface. The router-id should be the<br />
same as the IP address of one of the routerʹs<br />
numbered interfaces.<br />
netmask<br />
The netmask address of the interface<br />
displayed in the IPv4 format (e.g.<br />
255.255.255.0)<br />
The special value 255.255.255.255 is used to<br />
indicate an unnumbered interface. An<br />
unnumbered interface is configured by<br />
setting the IP address to the interfaceʹs<br />
router-id value, and setting netmask to<br />
255.255.255.255.<br />
N/A<br />
Example --> ip add interface ip1 192.168.103.3 255.255.255.0<br />
See also IP ATTACH<br />
IP SHOW INTERFACE<br />
IP SET INTERFACE IPADDRESS<br />
IP SET INTERFACE DHCP<br />
For information on setting DHCP client configuration options, see DHCP Client CLI<br />
commands.<br />
IP ADD ROUTE<br />
Syntax IP ADD ROUTE {GATEWAY | INTERFACE<br />
}<br />
Description This command creates a static route to a destination network address via a gateway<br />
device or an existing interface. It also allows the creation of a default route.<br />
<br />
A default route will not be created if a default route has already been created<br />
using the IP ADD ROUTE command or the IP ADD DEFAULTROUTE<br />
INTERFACE command.<br />
A route specifies a destination network (or single host), together with a mask to<br />
indicate what range of addresses the network covers, and a next-hop gateway<br />
address or interface. If there is a choice of routes for a destination, the route with the<br />
most specific mask is chosen.<br />
Routes are used when sending datagrams as well as forwarding them, so they are<br />
not relevant only to routers. However, a system with a single interface is likely to<br />
have a single route as a default route to the router on the network that it most often<br />
needs to use. Route metric can only be set using the IP SET ROUTE COST<br />
command.<br />
Options The following table gives the range of values for each option which can be specified
92 Chapter 5 – IP<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
dest_ip<br />
netmask<br />
gateway_ip<br />
interface<br />
An arbitrary name that identifies the route.<br />
It can be made up of one or more letters or a<br />
combination of letters and digits, but it<br />
cannot start with a digit.<br />
To create a default static route to a<br />
destination address, type default as the<br />
route name. Itʹs possible create one route<br />
called default.<br />
The IP address of the destination network<br />
displayed in the IPv4 format (e.g.<br />
192.168.102.3)<br />
The destination netmask displayed in the<br />
IPv4 format (e.g. 255.255.255.0)<br />
The IP address of the gateway that this<br />
route will use, displayed in the IPv4 format<br />
(e.g. 192.168.102.3)<br />
The name of the existing interface that this<br />
route will use. To display interface names,<br />
use the IP LIST INTERFACES command.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Examples There are two examples in this section. Example 1 routes through a gateway.<br />
Example 2 routes through an existing interface.<br />
Example 1<br />
--> ip add route route1 192.168.103.3 255.255.255.0 gateway 192.168.102.3<br />
Example 2<br />
--> ip add route route2 192.168.103.4 255.255.255.0 interface ip1<br />
See also<br />
LIST INTERFACES<br />
IP ATTACH<br />
Syntax IP ATTACH {|} <br />
Description This command attaches an existing IP interface to an existing transport (i.e. a<br />
VLAN) so that data can be transported via the selected transport.<br />
This command implicitly enables the transport being attached, i.e. IP frames passing<br />
through the VLAN used as transport could reach the system main processor.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 93<br />
Option Description Default Value<br />
name<br />
number<br />
transport<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
A name that identifies an existing transport<br />
(i.e. VLAN).<br />
To show the existing transports, use the<br />
TRANSPORT LIST command.<br />
N/A<br />
N/A<br />
N/A<br />
Example In the example below, voip is the name of an ethernet transport created using the<br />
ETHERNET ADD TRANSPORT command:<br />
--> ip attach ip1 voip<br />
See also IP ADD INTERFACE<br />
IP LIST INTERFACES<br />
IP ATTACHVIRTUAL<br />
Syntax IP ATTACHVIRTUAL {|} <br />
Description This command creates a virtual interface. The virtual interface is associated with a<br />
‘real’ IP interface that has already been attached to a transport using the IP<br />
ATTACH command. You can attach multiple virtual interfaces to one ‘real’ IP<br />
interface.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface that will be the virtual interface.<br />
The IP interface should not have a transport<br />
attached to it. To display the interface<br />
names, use the IP LIST INTERFACES<br />
command.<br />
A number that identifies an existing IP<br />
interface that will be the virtual interface.<br />
The IP interface should not have a transport<br />
attached to it. To display interface numbers,<br />
use the IP LIST INTERFACES command.<br />
The number appears in the first column<br />
under the heading ID.<br />
N/A<br />
N/A
94 Chapter 5 – IP<br />
Real_interface<br />
A name that identifies an existing IP<br />
interface. This is the ‘Real’ interface that the<br />
virtual interface will be associated with.<br />
This interface must already be attached to a<br />
transport. To display the interface names,<br />
use the IP LIST INTERFACES command.<br />
N/A<br />
Example --> ip attachvirtual ip_virtual ip_real<br />
See also IP LIST INTERFACES<br />
IP CLEAR ARPENTRIES<br />
Syntax IP CLEAR ARPENTRIES<br />
Description This command clears all ARP entries listed in the IP ARP table.<br />
Example --> ip clear arpentries<br />
IP CLEAR INTERFACES<br />
Syntax IP CLEAR INTERFACES<br />
Description This command clears all IP interfaces that were created using the IP ADD<br />
INTERFACE command.<br />
Example --> ip clear interfaces<br />
See also IP DELETE INTERFACE<br />
IP CLEAR RIPROUTES<br />
Syntax IP CLEAR RIPROUTES<br />
Description This command deletes all the existing dynamic routes that have been obtained from<br />
RIP. It does not delete the static routes; see the IP CLEAR ROUTES command.<br />
Example --> ip clear riproutes<br />
See also IP CLEAR ROUTES<br />
IP SET RIP HOSTROUTES<br />
IP SET INTERFACE RIP ACCEPT<br />
IP SET INTERFACE RIP SEND<br />
IP CLEAR ROUTES<br />
Syntax IP CLEAR ROUTES
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 95<br />
Description This command clears all static routes that were created using the IP ADD ROUTE<br />
command.<br />
Example --> ip clear routes<br />
See also IP DELETE ROUTE<br />
IP DELETE INTERFACE<br />
Syntax IP DELETE INTERFACE {|}<br />
Description This command deletes a single IP interface that was created using the IP ADD<br />
INTERFACE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip delete interface ip1<br />
See also IP CLEAR INTERFACES<br />
IP LIST INTERFACES<br />
IP DELETE ROUTE<br />
Syntax IP DELETE ROUTE {|}<br />
Description This command deletes a single route that was created using the IP ADD ROUTE<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing route. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
N/A<br />
number A number that identifies an existing route. N/A
96 Chapter 5 – IP<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The number appears in<br />
the first column under the heading ID.<br />
Example --> ip delete route route1<br />
See also IP LIST ROUTES<br />
IP DETACH INTERFACE<br />
Syntax IP DETACH {|}<br />
Description This command detaches an IP interface from a transport (i.e. a VLAN) where it was<br />
previously attached using the IP ATTACH INTERFACE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip detach ip1<br />
See also IP LIST INTERFACES<br />
IP INTERFACE ADD FQ CODEPOINT<br />
Syntax IP INTERFACE {|} ADD FQ CODEPOINT <br />
Description This command adds a flow qualifier rule that classifies IP packets based on the DS<br />
(Differentiated Services) codepoint field of the IP packet header. Incoming packets<br />
that match this rule are given a higher quality of service (qos) value, which allows<br />
them to be handled at a higher priority than other packets that do not match this<br />
rule.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name A name that identifies an existing IP N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 97<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
number<br />
fqname<br />
ds_codepoint<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
An arbitrary name that identifies the flow<br />
qualifier (fq). It can be made up of one or<br />
more letters or a combination of letters and<br />
digits, but it cannot start with a digit.<br />
A flow qualifier is a rule that allows you to<br />
select a quality of service value to assign to<br />
an incoming packet.<br />
A codepoint is a 6 digit binary number set<br />
in the DS (Differentiated Services) field of<br />
the IP packet header. DS RFCs defines<br />
recommended DS codepoint values for<br />
various PHBs (Per Hop Behaviors). The<br />
PHB supported here is Expedited<br />
Forwarding, which recommends a<br />
codepoint of 101110.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 add fq myfq codepoint 101110<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST FQS<br />
IP INTERFACE ADD FQ PROTOCOL<br />
Syntax IP INTERFACE {|} ADD FQ PROTOCOL { | TCP<br />
[] [] | UDP [] []}<br />
Description This command adds a flow qualifier rule that classifies IP packets based on the<br />
specified protocol. If the protocol specified is TCP or UDP, you can also specify the<br />
protocol source and destination port. Incoming packets that match this rule are<br />
given a higher quality of service (qos) value, which allows them to be handled at a<br />
higher priority than other packets that do not match this rule.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
N/A<br />
number A number that identifies an existing IP N/A
98 Chapter 5 – IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
fqname<br />
proto<br />
srcport<br />
dstport<br />
An arbitrary name that identifies the flow<br />
qualifier (fq). It can be made up of one or<br />
more letters or a combination of letters and<br />
digits, but it cannot start with a digit.<br />
A flow qualifier is a rule that allows you to<br />
select a quality of service value to assign to<br />
an incoming packet.<br />
The protocol type that you want to classify.<br />
The protocol can be TCP, UDP, ICMP, GRE<br />
or any numeric value.<br />
For a list of protocol numbers, see RFC1700<br />
The source port of incoming packets. This is<br />
only used if you have set TCP or UDP as the<br />
fq protocol. If you set this to 0, packets<br />
arriving from any port are classified.<br />
The destination port of incoming packets.<br />
This is only used if you have set TCP or<br />
UDP as the fq protocol. If you set this to 0,<br />
packets destined for any port are classified.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
To prioritise TCP packets with source port 50000 and dest port 80<br />
--> ip interface ip1 add fq myfq1 protocol tcp 50000 80<br />
--> ip interface ip3 add fq myfq1 protocol udp 0 5001<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST FQS<br />
IP INTERFACE ADD FQ SRCADDR CODEPOINT<br />
Syntax IP INTERFACE {|} ADD FQ SRCADDR <br />
CODEPOINT <br />
Description This command adds a flow qualifier rule that classifies IP packets based on both the<br />
source IP address of incoming packets, and the DS (Differentiated Services)<br />
codepoint field of each IP packet header.<br />
Incoming packets that match this rule are given a higher quality of service (qos)<br />
value, which allows them to be handled at a higher priority than other packets that<br />
do not match this rule.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 99<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
fqname<br />
srcaddr<br />
ds_codepoint<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
An arbitrary name that identifies the flow<br />
qualifier (fq). It can be made up of one or<br />
more letters or a combination of letters and<br />
digits, but it cannot start with a digit.<br />
A flow qualifier is a rule that allows you to<br />
select a quality of service value to assign to<br />
an incoming packet.<br />
The IP address that will be compared<br />
against the source IP address of incoming<br />
packets, displayed in the following format:<br />
192.168.102.3<br />
A codepoint is a 6 digit binary number set<br />
in the DS (Differentiated Services) field of<br />
the IP packet header. DS RFCs define<br />
recommended DS codepoint values for<br />
various PHBs (Per Hop Behaviors). The<br />
PHB supported here is Expedited Forwarding,<br />
which recommends a codepoint of 101110.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 add fq myfq1 srcaddr 192.168.101.2 codepoint 101110<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST FQS<br />
IP INTERFACE ADD FQ SRCADDR PROTOCOL<br />
Syntax IP INTERFACE {|} ADD FQ SRCADDR <br />
PROTOCOL { | TCP | UDP }<br />
Description This command adds a flow qualifier rule that classifies IP packets based on the<br />
source address and protocol of the packet. If the protocol specified is TCP or UDP,<br />
you can also specify the protocol source and destination port. Incoming packets that<br />
match this rule are given a higher quality of service (qos) value, which allows them<br />
to be handled at a higher priority than other packets that do not match this rule.
100 Chapter 5 – IP<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
fqname<br />
srcaddr<br />
proto<br />
srcport<br />
dstport<br />
A name that identifies an existing IP interface. To<br />
display interface names, use the IP LIST<br />
INTERFACES command.<br />
A number that identifies an existing IP interface.<br />
To display interface numbers, use the IP LIST<br />
INTERFACES command. The number appears<br />
in the first column under the heading ID.<br />
An arbitrary name that identifies the flow<br />
qualifier (fq). It can be made up of one or more<br />
letters or a combination of letters and digits, but<br />
it cannot start with a digit.<br />
A flow qualifier is a rule that allows you to select<br />
a quality of service value to assign to an<br />
incoming packet.<br />
The IP address that will be compared against the<br />
source IP address of incoming packets, displayed<br />
in the following format:<br />
192.168.102.3<br />
The protocol type that you want to classify. The<br />
protocol can be TCP, UDP, ICMP, GRE or any<br />
numeric value.<br />
For a list of protocol numbers, RFC1700.<br />
The source port of incoming packets. This is only<br />
used if you have set TCP or UDP as the fq<br />
protocol. If you set this to 0, packets arriving<br />
from any port are classified.<br />
The destination port of incoming packets. This is<br />
only used if you have set TCP or UDP as the fq<br />
protocol. If you set this to 0, packets destined for<br />
any port are classified.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
0<br />
0<br />
Example<br />
To prioritise TCP packets from 192.168.101.2, with source port 50000 and destport 80<br />
--> ip interface ip1 add fq fq1 srcaddr 192.168.101.2 protocol<br />
tcp 50000 80<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST FQS<br />
IP INTERFACE ADD PROXYARPENTRY<br />
Syntax IP INTERFACE {|} ADD PROXYARPENTRY []
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 101<br />
Description This command configures proxy ARP functionality on an existing IP interface. This<br />
means that an interface responds to ARP requests for both its own address and for<br />
any address that has been configured as a proxy ARP address.<br />
You can configure proxy ARP functionality on a single address or a range of<br />
addresses. Once you have configured a range of proxy ARP interfaces, you can set<br />
one or more addresses in the range to NOT respond to proxy ARP using the IP<br />
INTERFACE ADD PROXYARPEXCLUSION command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ipaddress<br />
netmask<br />
A name that identifies an existing IP interface. To<br />
display interface names, use the IP LIST<br />
INTERFACES command.<br />
A number that identifies an existing IP interface.<br />
To display interface numbers, use the IP LIST<br />
INTERFACES command. The number appears<br />
in the first column under the heading ID.<br />
The IP address (or range of addresses) of the<br />
address for which you wish to make proxy ARP<br />
replies, displayed in the IPv4 format (e.g.<br />
192.168.102.3)<br />
The netmask of the subnet for which you wish to<br />
make proxy ARP replies, displayed in the IPv4<br />
format: (e.g. 255.255.255.0)<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example The following command adds proxy ARP support to the entire subnet 192.168.100.0:<br />
--> ip interface ip1 add proxyarpentry 192.168.100.0 255.255.255.0<br />
See also IP INTERFACE ADD PROXYARPEXCLUSION<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
IP INTERFACE ADD PROXYARPEXCLUSION<br />
Syntax IP INTERFACE {|} ADD PROXYARPEXCLUSION <br />
[]<br />
Description This command configures proxy ARP exclusion functionality on an existing IP<br />
interface. This means that once you have configured an interface with a range of<br />
proxy ARP addresses, you can set one or more addresses in the range to NOT<br />
respond with proxy ARP.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value
102 Chapter 5 – IP<br />
name<br />
number<br />
ipaddress<br />
netmask<br />
A name that identifies an existing IP interface. To<br />
display interface names, use the IP LIST<br />
INTERFACES command.<br />
A number that identifies an existing IP interface.<br />
To display interface numbers, use the IP LIST<br />
INTERFACES command. The number appears<br />
in the first column under the heading ID.<br />
The IP address (or range of addresses) that you<br />
want to set as a proxy ARP exclusion entry,<br />
displayed in the IPv4 format (e.g. 192.168.102.3)<br />
The netmask of the subnet you wish to exclude<br />
from proxy ARP, displayed in the IPv4 format<br />
(e.g. 255.255.255.0)<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example The first command below adds proxy ARP support to the subnet 192.168.100.0 . The<br />
second command excludes proxy ARP support from 192.168.100.10 /<br />
255.255.255.254:<br />
--> ip interface ip1 add proxyarpentry 192.168.100.0 255.255.255.0<br />
--> ip interface ip1 add proxyarpexclusion 192.168.100.10 255.255.255.254<br />
This means that the Residential Gateway will make proxy ARP responses for the<br />
entire subnet 192.168.100.0 / 255.255.255.0, EXCEPT for addresses 192.168.100.10 and<br />
192.168.100.11.<br />
See also IP INTERFACE ADD PROXYARPENTRY<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
IP INTERFACE ADD SECONDARYIPADDRESS<br />
Syntax IP INTERFACE {|} ADD SECONDARYIPADDRESS <br />
[]<br />
Description This command adds a secondary IP address to an existing IP interface. A secondary<br />
address may be used to create an extra IP address on an interface for management<br />
purposes, or to allow the IP stack to route between two subnets on the same<br />
interface.<br />
The functionality of secondary IP addresses depends on several parameters<br />
including the type of IP interface and the netmask:<br />
• if a secondary address is on the same subnet as the primary interface address, you<br />
do not need to specify a subnet mask for that secondary address. This applies to<br />
all interface types.<br />
<br />
The ability to specify a subnet mask with a secondary address is superseded by<br />
the functionality of virtual interfaces. You should use virtual interfaces instead.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 103<br />
Option Description Default Value<br />
name<br />
number<br />
netmask<br />
ipaddress<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The netmask of the secondary IP address<br />
displayed in the Iov4 format (e.g.<br />
255.255.255.0)<br />
To display the secondary IP addresses, use<br />
the IP INTERFACE LIST<br />
SECONDARYIPADDRESSES command.<br />
A secondary IP address that you want to<br />
add to the main IP interface. You can add<br />
any number of secondary IP addresses. The<br />
IP address is displayed in the IPv4 format<br />
(e.g. 192.168.102.3)<br />
To display the secondary IP addresses, use<br />
the IP INTERFACE LIST<br />
SECONDARYIPADDRESSES command.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 add secondaryipaddress 192.168.102.3<br />
255.255.255.0<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST SECONDARYIPADDRESSES<br />
IP INTERFACE CLEAR FQS<br />
Syntax IP INTERFACE {|} CLEAR FQS<br />
Description This command deletes all flow qualifiers that have been added to an existing IP<br />
interface using the IP INTERFACE ADD FQ commands.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
N/A<br />
N/A
104 Chapter 5 – IP<br />
number appears in the first column under<br />
the heading ID.<br />
Example --> ip interface ip1 clear fqs<br />
See also IP LIST INTERFACES<br />
IP INTERFACE DELETE FQ<br />
IP INTERFACE CLEAR PROXYARPENTRIES<br />
Syntax IP INTERFACE {|} CLEAR PROXYARPENTRIES<br />
Description This command clears all proxy arp entries and exclusions that were created using<br />
the IP INTERFACE ADD PROXYARPENTRY and IP INTERFACE ADD<br />
PROXYARPEXCLUSION commands.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 clear proxyarpentries<br />
See also IP INTERFACE ADD PROXYARPENTRY<br />
IP INTERFACE ADD PROXYARPEXCLUSION<br />
IP INTERFACE CLEAR SECONDARYIPADDRESSES<br />
Syntax IP INTERFACE {|} CLEAR SECONDARYIPADDRESSES<br />
Description This command deletes all additional IP addresses that have been added to an<br />
existing IP interface using the IP INTERFACE ADD SECONDARYIPADDRESS<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 105<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 clear secondaryipaddresses<br />
See also IP LIST INTERFACES<br />
IP INTERFACE ADD SECONDARYIPADDRESS<br />
IP INTERFACE DELETE SECONDARYIPADDRESS<br />
IP INTERFACE LIST SECONDARYIPADDRESSES<br />
IP INTERFACE DELETE FQ<br />
Syntax IP INTERFACE {|} DELETE FQ <br />
Description This command deletes a single flow qualifier that has been added to an existing IP<br />
interface using the IP INTERFACE ADD FQ commands.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
fqname<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
A name that identifies the flow qualifier (fq). To<br />
display flow qualifier names, use the IP<br />
INTERFACE LIST FQS command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 delete fq myfq<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST FQS
106 Chapter 5 – IP<br />
IP INTERFACE DELETE PROXYARPENTRIES<br />
Syntax IP INTERFACE {|} DELETE PROXYARPENTRIES <br />
Description This command deletes a single proxy arp entry that was created using the IP<br />
INTERFACE ADD PROXYARPENTRY command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
entrynumber<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
A number that identifies an existing<br />
ProxyArp entry on this IP interface. To<br />
display entry numbers, use the IP<br />
INTERFACE LIST PROXYARPENTRIES<br />
command. The number appears in the first<br />
column under the heading ID.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 delete proxyarpentry 1<br />
See also IP INTERFACE ADD PROXYARPENTRY<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
IP INTERFACE DELETE PROXYARPEXCLUSION<br />
Syntax IP INTERFACE {|} DELETE PROXYARPEXCLUSION <br />
Description This command deletes a single proxy arp exclusion entry that was created using the<br />
IP INTERFACE ADD PROXYARPEXCLUSION command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 107<br />
number<br />
entrynumber<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
A number that identifies an existing<br />
ProxyArpExclusion entry on this IP<br />
interface. To display entry numbers, use the<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
command. The number appears in the first<br />
column under the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 delete proxyarpexclusion 2<br />
See also IP INTERFACE ADD PROXYARPEXCLUSION<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
IP INTERFACE DELETE SECONDARYIPADDRESS<br />
Syntax IP INTERFACE {|} DELETE SECONDARYIPADDRESS<br />
<br />
Description This command deletes a single secondary IP address that has previously been<br />
added to an existing IP interface using the IP INTERFACE ADD<br />
SECONDARYIPADDRESS command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
secondary<br />
ipaddress<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The number that identifies a secondary IP<br />
address that you want to delete from the<br />
main IP interface. To display secondary IP<br />
address numbers, use the IP INTERFACE<br />
LIST SECONDARYIPADDRESSES<br />
command. The number appears in the first<br />
column under the heading ID.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 delete secondaryipaddress 1
108 Chapter 5 – IP<br />
See also IP LIST INTERFACES<br />
IP INTERFACE LIST SECONDARYIPADDRESSES<br />
IP INTERFACE LIST FQS<br />
Syntax IP INTERFACE {|} LIST FQS<br />
Description This command lists all flow qualifiers that have been added to an existing IP<br />
interface using the IP INTERFACE ADD FQS command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 list fqs<br />
Flow Qualifiers for interface: ip1<br />
ID | Name | Src IP Address | Proto | Src Port | Dst Port | ds<br />
---|------|----------------|-------|----------|----------|-------<br />
1 | fq1 | 192.168.101.2 | tcp | 50000 | 80 |101110<br />
-----------------------------------------------------------------<br />
IP INTERFACE LIST PROXYARPENTRIES<br />
Syntax IP INTERFACE {|} LIST PROXYARPENTRIES<br />
Description This command displays information about proxy arp entries and exclusions that<br />
were created using the IP INTERFACE ADD PROXYARPENTRY and IP<br />
INTERFACE ADD PROXYARPEXCLUSION commands.<br />
The following information are displayed:<br />
• interface ID numbers<br />
• IP address and netmask of proxy ARP entries and exclusions<br />
• Exclusion status; true for exclusions, false for inclusions<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 109<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip interface ip1 list proxyarpentries<br />
ID | IP Address | Netmask | Exclude<br />
---|---------------|----------------|----------<br />
1 | 192.168.100.0 | 255.255.255.0 | false<br />
2 | 192.168.100.8 | 255.255.255.254| true<br />
-----------------------------------------------<br />
IP INTERFACE LIST SECONDARYIPADDRESSES<br />
Syntax IP INTERFACE {|} LIST SECONDARYIPADDRESSES<br />
Description This command lists the secondary IP addresses that have been added to an existing<br />
IP interface using the IP INTERFACE ADD SECONDARYIPADDRESS command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example In the example output below, secondary IP addresses without netmasks associated<br />
with them appear as 0.0.0.0 by default.<br />
--> ip interface ip1 list secondaryipaddresses<br />
ID | IP Address | Netmask<br />
-----|-----------------------------------<br />
1 | 192.168.104.6 | 255.255.255.0<br />
2 | 192.168.103.4 | 255.255.255.0<br />
3 | 192.168.103.2 | 255.255.255.0<br />
-----------------------------------------
110 Chapter 5 – IP<br />
See also IP LIST INTERFACES<br />
IP LIST INTERFACE SECONDARYIPADDRESS<br />
IP LIST ARPENTRIES<br />
Syntax IP LIST ARPENTRIES<br />
Description This command displays the ARP table, which lists the following information:<br />
• IP addresses and corresponding MAC addresses obtained by ARP.<br />
• IP interface on which the host is connected<br />
• Static status - `noʹ for dynamically generated ARP entries; `yesʹ for static entries<br />
added by the user.<br />
Example --> ip list arpentries<br />
IP ARP table entries:<br />
IP address | MAC address | Interface | Static<br />
-----------------|-------------------|--------------|--------<br />
10.10.10.10 | 00:20:2b:e0:03:87 | 3 | no<br />
-----------------|-------------------|--------------|--------<br />
20.20.20.20 | 00:20:2b:03:0a:72 | 2 | no<br />
-----------------|-------------------|--------------|--------<br />
30.30.30.30 | 00:20:2b:03:09:c4 | 1 | no<br />
-------------------------------------------------------------<br />
IP LIST CONNECTIONS<br />
Syntax IP LIST CONNECTIONS<br />
Description This command lists the active TCP/UDP connections in use by applications running<br />
on the device. It displays the following information:<br />
• Protocol type (TCP or UDP)<br />
• Local connection address and port number<br />
• Remote connection address and port number<br />
• Connection state for TCP connections<br />
This command does not show raw socket connections or UDP connections opened<br />
internally within the IP stack.<br />
Example The example below shows an active telnet connection, and the listen sockets of the<br />
WebServer, TFTP server and SNMP:<br />
--> ip list connections<br />
Local TCP/UDP connections:<br />
Proto | Local address | Remote address | State<br />
-------|------------------------|------------------------|------------<br />
tcp | 192.168.91.19:23 | 192.168.91.18:1080 | ESTABLISHED<br />
tcp | *:80 | *:* | LISTEN<br />
udp | *:69 | *:* |<br />
udp | *:161 | *:* |
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 111<br />
----------------------------------------------------------------------<br />
IP LIST INTERFACES<br />
Syntax IP LIST INTERFACES<br />
Description This command lists information about IP interfaces that were added using the ip add<br />
interface command. The following information is displayed:<br />
• interface ID numbers<br />
• interface names<br />
• IP addresses (if previously specified)<br />
• DHCP status<br />
• Whether a transport is attached to the interface, and if so, the name of the<br />
transport<br />
• Whether a virtual interface is attached to a real interface. The name of the<br />
attached virtual interface is displayed in the Transport column in square brackets,<br />
for example [ip2]<br />
Example --> ip list interfaces<br />
IP Interfaces:<br />
ID | Name | IP Address | DHCP | Transport<br />
-----|--------------|------------------|----------|---------------<br />
1 | ppp_device | 192.168.102.2 | disabled | pppoe1<br />
2 | ip0 | 192.168.1.1 | disabled | default<br />
------------------------------------------------------------------<br />
See also IP SHOW INTERFACE<br />
IP SET INTERFACE DHCP<br />
IP LIST RIPROUTES<br />
Syntax IP LIST RIPROUTES<br />
Description This command lists information about the routes that have been obtained from RIP.<br />
It displays the following information:<br />
• destination IP addresses<br />
• destination netmask<br />
• gateway address<br />
• cost - The number of hops counted as the cost of the route.<br />
• timeout - the number of seconds that this RIP route will remain in the routing<br />
table unless updated by RIP.<br />
• source interface - the name of the existing interface that this route uses<br />
Example --> ip list riproutes
112 Chapter 5 – IP<br />
IP RIP routes:<br />
Destination | Mask | Gateway | Cost | Time | Source<br />
---------------|---------------|-----------------|------|------|-------<br />
192.168.101.1 | 255.255.255.0 | 10.10.10.10 | 1 | 3000 | ip2<br />
-----------------------------------------------------------------------<br />
See also IP SET RIP HOSTROUTES<br />
IP SET INTERFACE RIP ACCEPT<br />
IP SET INTERFACE RIP SEND<br />
IP LIST ROUTES<br />
Syntax IP LIST ROUTES<br />
Description This command lists information about existing routes. It displays the following<br />
information:<br />
IP routes:<br />
• route ID numbers<br />
• route names<br />
• destination IP addresses (if previously specified)<br />
• destination netmask address (if previously specified)<br />
• Either the gateway address or the name of the destination interface (whichever is<br />
set)<br />
Example --> ip list routes<br />
ID | Name | Destination | Netmask | Gateway/Interface<br />
-----|----------|------------------|------------------|-----------------<br />
2 | route2 | 192.168.102.3 | 255.255.255.0 | ip1<br />
1 | route1 | 192.168.50.50 | 255.255.255.0 | 192.168.68.68<br />
-----------------------------------------------------------------------<br />
See also IP SHOW ROUTE<br />
IP PING<br />
Syntax IP PING <br />
Description This command pings a specified destination IP address.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
dest-ip<br />
The IP address of the destination machine<br />
that you want to ping, displayed in the IPv4<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 113<br />
format (192.168.102.3)<br />
Example --> ip ping 192.168.102.3<br />
ip: ping - reply received from 192.168.102.3<br />
If ping was unsuccessful, the following output is displayed:<br />
ip: ping - no reply received.<br />
IP SET INTERFACE DHCP<br />
Syntax IP SET INTERFACE {|} DHCP {ENABLED|DISABLED}<br />
Description This command specifies whether a named interface should obtain its configuration<br />
via DHCP.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
enabled<br />
disabled<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The interface obtains its configuration<br />
information from DHCP client.<br />
The interface does not use DHCP client<br />
configuration information.<br />
N/A<br />
N/A<br />
disabled<br />
Example --> ip set interface ip2 dhcp enabled<br />
See also IP SET INTERFACE IPADDRESS<br />
IP SET INTERFACE MTU<br />
IP LIST INTERFACES<br />
For information on setting DHCP client configuration options, see DHCP Client CLI<br />
commands.<br />
IP SET INTERFACE IPADDRESS<br />
Syntax IP SET INTERFACE {|} IPADDRESS []<br />
Description This command sets the IP address for an existing IP interface.
114 Chapter 5 – IP<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option<br />
name<br />
number<br />
ip address<br />
netmask<br />
Description<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The IP address of the interface displayed in<br />
the following IPv4 format (e.g.<br />
192.168.102.3)<br />
If the IP address is set to the special value<br />
0.0.0.0, the interface is marked as<br />
unconfigured. This value is used when the<br />
interface address is obtained automatically.<br />
For unnumbered interfaces, the IP address<br />
parameter is used to specify the router-id of<br />
the interface. The router-id should be the<br />
same as the IP address of one of the routerʹs<br />
numbered interfaces.<br />
The netmask of the interface displayed in<br />
the IPv4 format (e.g. 255.255.255.0)<br />
The special value 255.255.255.255 is used to<br />
indicate an unnumbered interface.<br />
An unnumbered interface is configured by<br />
setting the IP address to the interfaceʹs<br />
router-id value, and setting netmask to<br />
255.255.255.255.<br />
Default Value<br />
N/A<br />
N/A<br />
0.0.0.0<br />
If no netmask is<br />
supplied, the<br />
natural mask of<br />
the IP address is<br />
used.<br />
Example --> ip set interface ip4 ipaddress 192.168.102.3 255.255.255.0<br />
See also IP SET INTERFACE MTU<br />
IP SET INTERFACE DHCP<br />
IP LIST INTERFACES<br />
IP SET INTERFACE MTU<br />
Syntax IP SET INTERFACE {|} MTU <br />
Description This command sets the MTU (Maximum Transmission Unit) for an existing IP<br />
interface.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 115<br />
Option Description Default Value<br />
name<br />
number<br />
mtu<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
Maximum Transmission Unit: maximum<br />
packet size (in bytes) that an interface can<br />
handle. The MTU should be set to a value<br />
appropriate for the transport attached to the<br />
interface (typically from 576 to 1500 bytes).<br />
For example, Ethernet and most other<br />
transports support an MTU of 1500 bytes,<br />
whereas PPPoE supports an MTU of 1492<br />
bytes.<br />
N/A<br />
N/A<br />
1500<br />
Example --> ip set interface ip2 mtu 800<br />
See also IP SET INTERFACE IPADDRESS<br />
IP SET INTERFACE DHCP<br />
IP LIST INTERFACES<br />
IP SET INTERFACE NETMASK<br />
Syntax IP SET INTERFACE {|} netmask<br />
Description This command sets the netmask for an existing IP interface.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option<br />
name<br />
number<br />
Description<br />
A name that identifies an existing IP interface. To<br />
display interface names, use the IP LIST<br />
INTERFACES command<br />
A number that identifies an existing IP interface.<br />
To display interface numbers, use the IP LIST<br />
INTERFACES command. The number appears<br />
in the first column under the heading ID.<br />
Default Value<br />
N/A<br />
N/A
116 Chapter 5 – IP<br />
netmask<br />
The netmask of the interface displayed in the<br />
IPv4 format (e.g. 255.255.255.0)<br />
The special value 255.255.255.255 is used to<br />
indicate an unnumbered interface.<br />
An unnumbered interface is configured by<br />
setting the IP address to the interface’s router-id<br />
value, and setting netmask to 255.255.255.255.<br />
N/A<br />
Example --> ip set interface ip6 netmask 255.255.255.0<br />
See also IP SET INTERFACE IPADDRESS<br />
IP LIST INTERFACES<br />
IP SET INTERFACE RIP ACCEPT<br />
Syntax IP SET INTERFACE {|} RIP ACCEPT {NONE|V1|V2|ALL}<br />
Description This command specifies whether or not an existing interface accepts RIP messages.<br />
You can specify what version of RIP messages are accepted by the interface.<br />
When receiving RIP v1 messages, the IP stack tries to use the information it has<br />
available to determine the appropriate subnet mask for the addresses received.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option<br />
name<br />
number<br />
NONE<br />
V1<br />
V2<br />
ALL<br />
Description<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACE command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The interface does not accept RIP messages.<br />
The interface only accepts RIP version 1<br />
messages (RFC1058).<br />
The interface only accepts RIP version 2<br />
messages (RFC1723).<br />
The interface accepts RIP version 1<br />
(RFC1058) and RIP version 2 (RFC1723)<br />
messages.<br />
Default Value<br />
N/A<br />
N/A<br />
none<br />
Example --> ip set interface ip3 rip accept none<br />
See also IP SET INTERFACE RIP SEND<br />
IP SET INTERFACE RIP MULTICAST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 117<br />
IP SET RIP HOSTROUTES<br />
IP SET RIP POISON<br />
IP SHOW<br />
IP LIST INTERFACES<br />
IP SET INTERFACE RIP MULTICAST<br />
Syntax IP SET INTERFACE {|} RIP MULTICAST {ENABLED |<br />
DISABLED}<br />
Description This command allows you to enable/disable whether RIP version 2 messages are<br />
sent via multicast.<br />
RIP version 2 messages sent via multicast are only received by the hosts on the<br />
network that are configured to listen to the RIP v2 multicast address. If this<br />
command is disabled, RIP version 2 messages are sent via broadcast and are<br />
received by all the hosts on the network.<br />
You need to set RIP to send v2 messages using the IP SET INTERFACE RIP SEND<br />
command in order for the IP SET INTERFACE RIP MULTICAST ENABLED<br />
command to send version 2 messages via multicast.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
Allows RIP version 2 messages to be sent<br />
via multicast.<br />
Disables RIP version 2 messages being sent<br />
via multicast. Messages are sent via<br />
broadcast instead.<br />
N/A<br />
N/A<br />
disabled<br />
Example --> ip set interface ip1 rip multicast enabled<br />
See also IP LIST INTERFACES<br />
IP SET INTERFACE RIP SEND<br />
IP SET INTERFACE RIP SEND<br />
Syntax IP SET INTERFACE {|} RIP SEND {NONE|V1|V2|ALL}
118 Chapter 5 – IP<br />
Description This command specifies whether or not an existing interface can send RIP messages.<br />
You can specify which version of RIP messages will broadcast routing information<br />
on the interface. Routing information is broadcast every 30 seconds or when the RIP<br />
routing table is changed.<br />
<br />
RIP version 1 does not allow specification of subnet masks; a RIP version 1 route<br />
that appears to be to an individual host might in fact be to a subnet, and treating<br />
it as a route to the whole network may be the best way to make use of the<br />
information.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
NONE<br />
RIP SEND V1<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
The interface does not accept RIP messages.<br />
The interface only sends RIP version 1 messages<br />
(RFC1058)<br />
N/A<br />
N/A<br />
RIP SEND V2<br />
RIP SEND<br />
ALL<br />
The interface only sends RIP version 2 messages<br />
(RFC1723). If set, RIP version 2 is used on all<br />
non-loopback interfaces.<br />
The interface sends RIP version 1 (RFC1058) and<br />
RIP version 2 (RFC1723) messages.<br />
none<br />
Example<br />
--> ip set interface ip1 rip send v1<br />
See also IP SET INTERFACE RIP ACCEPT<br />
IP SET RIP HOSTROUTES<br />
IP SET RIP POISON<br />
IP SHOW<br />
IP LIST INTERFACES<br />
IP SET INTERFACE TCPMSSCLAMP<br />
Syntax IP SET INTERFACE TCPMSSCLAMP {ENABLED|DISABLED}<br />
Description This command enables/disables TCP MSS (Maximum Segment Size) Clamp<br />
functionality on an existing IP interface. When TCP MSS Clamp is enabled on an<br />
interface, all TCP traffic routed through that interface will be examined. If a TCP<br />
SYN (synchronize/start) segment is sent with a maximum segment size larger than
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 119<br />
the interface MTU (Maximum Transmission Unit), the MSS option will be rewritten<br />
in order to allow TCP traffic to pass through the interface without requiring<br />
fragmentation.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
TCP SYN segments routed through this<br />
interface will be examined and, if necessary,<br />
modified.<br />
The IP stack will not examine or modify<br />
TCP traffic routed through this interface.<br />
N/A<br />
disabled<br />
Example --> ip set interface ip2 tcpmssclamp enabled<br />
See also IP SET INTERFACE MTU<br />
IP SHOW<br />
IP SET RIP ADVERTISEDEFAULT<br />
Syntax IP SET RIP ADVERTISEDEFAULT {ENABLED | DISABLED}<br />
Description This command enables/disables the advertising of a default route via RIP. If you set<br />
this to enabled, then create a default route using the IP ADD DEFAULTROUTE<br />
commands, the route will also be added to those advertised by the RIP protocol.<br />
The cost associated with the route is the value set using the IP SET RIP<br />
DEFAULTROUTECOST command.<br />
You must enable default advertising before you create the default route.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLED<br />
DISABLED<br />
Enables RIP to advertise a default route<br />
with the cost metric set using the IP SET RIP<br />
DEFAULTROUTECOST command.<br />
Disables advertisement of a default route.<br />
disabled<br />
Example --> ip set rip advertisedefault enabled<br />
See also IP ADD DEFAULTROUTE GATEWAY
120 Chapter 5 – IP<br />
IP ADD DEFAULTROUTE INTERFACE<br />
IP SET RIP DEFAULTROUTECOST<br />
IP SET RIP AUTHENTICATION<br />
Syntax IP SET RIP AUTHENTICATION {ENABLED | DISABLED}<br />
Description This command enables/disables RIP v2 plain text authentication.<br />
If enabled, a plain text authentication string is placed in RIP v2 packets.<br />
RIP v2 packets will only be accepted if they contain an authentication entry with the<br />
correct password string.<br />
Packets with no authentication or the wrong password will be rejected.<br />
To set an authentication password, use the IP SET RIP PASSWORD command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLED<br />
DISABLED<br />
Accepts RIP v2 packets that contain an<br />
authentication entry with the correct<br />
password string.<br />
Packets with no authentication or the wrong<br />
password are rejected.<br />
Rejects RIP v2 packets containing an<br />
authentication entry.<br />
disabled<br />
Example --> ip set rip authentication enabled<br />
See also IP SET RIP PASSWORD<br />
IP SHOW<br />
IP SET RIP DEFAULTROUTECOST<br />
Syntax IP SET RIP DEFAULTROUTECOST <br />
Description This command sets the number of hops counted as the cost of a default route<br />
advertised via RIP.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
cost<br />
The number of hops counted as the cost of<br />
the default route. The cost value can be any<br />
positive integer between 1 and 15.<br />
1
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 121<br />
Example --> ip set rip defaultroutecost 10<br />
See also IP ADD DEFAULTROUTE GATEWAY<br />
IP ADD DEFAULTROUTE INTERFACE<br />
IP SET RIP ADVERTISEDEFAULT<br />
IP SET RIP HOSTROUTES<br />
Syntax IP SET RIP HOSTROUTES {ENABLED | DISABLED}<br />
Description Specifies whether IP interfaces will accept RIP routes to specific routes.<br />
<br />
RIP version 1 does not allow specification of subnet masks; a RIP version 1 route<br />
that appears to be to an individual host might in fact be to a subnet, and treating<br />
it as a route to the whole network may be the best way to make use of the<br />
information.<br />
To display the current state of rip hostroutes, use the IP SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLED<br />
DISABLED<br />
Sets the hostroutes flag to on. The interface<br />
accepts RIP routes to specific hosts.<br />
Sets the hostroutes flag to off.<br />
RIP version 1 routes to individual hosts are<br />
treated as routes to the network containing<br />
the host.<br />
RIP version 2 routes to individual hosts are<br />
ignored.<br />
disabled<br />
Example --> ip set rip hostroutes enabled<br />
See also IP SET INTERFACE RIP ACCEPT<br />
IP SET INTERFACE RIP SEND<br />
IP SHOW<br />
IP SET RIP PASSWORD<br />
Syntax IP SET RIP PASSWORD <br />
Description This command sets an authentication string that is placed in RIP v2 packets if ip set<br />
rip authentication is enabled.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).
122 Chapter 5 – IP<br />
Option Description Default Value<br />
password<br />
An authentication password used by RIP v2<br />
packets if ip set rip authentication is<br />
enabled. The password is a string of 0 to 16<br />
characters.<br />
N/A<br />
Example --> ip set rip password vancouver<br />
See also IP SET RIP AUTHENTICATION<br />
IP SHOW<br />
IP SET RIP POISON<br />
Syntax IP SET RIP POISON {ENABLED | DISABLED}<br />
Description Enables or disables the poisoned reverse flag. If this flag is on, the AT-RG613, AT-<br />
RG623 and AT-RG656 performs poisoned reverse as defined in RFC 1058; see that<br />
RFC for discussion of the details.<br />
In short, though, the effect of Poison Reverse is to specifically advertise routes, with<br />
metric set to 16, if those routes are no longer accessible for some reason. Hosts<br />
receiving these advertisements will then mark these routes as unusable. This<br />
process results in a quicker updating of other hosts routing tables. The alternative is<br />
to simply not advertise the inaccessible routes, and let other hosts eventually age<br />
them out.<br />
To display the current state of the poisoned reverse flag, use the IP SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLED<br />
DISABLED<br />
Sets the poisoned reverse flag to on. The AT-<br />
RG613, AT-RG623 and AT-RG656 TCP/IP<br />
performs poisoned reverse as defined in<br />
RFC 1058.<br />
Sets the poisoned reverse flag to off.<br />
disabled<br />
Example --> ip set rip poison enabled<br />
See also IP SET INTERFACE RIP ACCEPT<br />
IP SET INTERFACE RIP SEND<br />
IP SET RIP HOSTROUTES<br />
IP SHOW<br />
IP SET ROUTE COST<br />
Syntax IP SET ROUTE {|} COST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 123<br />
Description This command sets the number of hops counted as the cost of the route for a route<br />
previously created using the IP ADD ROUTE command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
cost<br />
A name that identifies an existing route. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
A number that identifies an existing route.<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The number appears in<br />
the first column under the heading ID.<br />
The number of hops counted as the cost of<br />
the route. This may affect the choice of<br />
route when the route is competing with<br />
routes acquired from RIP. (Using a mixture<br />
of RIP and static routing is not advised).<br />
The cost value can be any positive integer.<br />
N/A<br />
N/A<br />
1<br />
Example --> ip set route route1 cost 3<br />
See also IP ADD ROUTE<br />
IP SET ROUTE DESTINATION<br />
IP SET ROUTE GATEWAY<br />
IP LIST ROUTES<br />
IP SET ROUTE DESTINATION<br />
Syntax IP SET ROUTE {|} DESTINATION <br />
Description This command sets the destination network address of a route previously created<br />
using the IP ADD ROUTE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing route. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
A number that identifies an existing route.<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The number appears in<br />
the first column under the heading ID.<br />
N/A<br />
N/A<br />
dest-network The IP address of the destination network N/A
124 Chapter 5 – IP<br />
displayed in the IPv4 format (e.g.<br />
192.168.102.3)<br />
netmask<br />
The destination netmask displayed in the<br />
IPv4 format (e.g. 255.255.255.0)<br />
N/A<br />
Example<br />
--> ip set route route1 destination 192.168.103.3 255.255.255.0<br />
See also IP SET ROUTE GATEWAY<br />
IP SET ROUTE COST<br />
IP LIST ROUTES<br />
IP SET ROUTE GATEWAY<br />
Syntax IP SET ROUTE {|} GATEWAY <br />
Description This command sets the gateway address of a route previously created using the IP<br />
ADD ROUTE command.<br />
If you want the route to go directly to its destination and not via a gateway, specify<br />
0.0.0.0 as the gateway.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
gateway<br />
A name that identifies an existing route. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
A number that identifies an existing route.<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The numbers appear in<br />
the first column under the heading ID.<br />
The IP address of the gateway, which is the<br />
next device along the path to the destination<br />
network, displayed in the IPv4 format (e.g.<br />
192.168.102.3)<br />
If you added a route directly to an interface,<br />
the gateway address is set by default to<br />
0.0.0.0 so that no gateway is specified.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip set route route1 gateway 192.168.102.3<br />
See also IP ADD ROUTE<br />
IP SET ROUTE DESTINATION
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 125<br />
IP SET ROUTE COST<br />
IP LIST ROUTES<br />
IP SET ROUTE INTERFACE<br />
Syntax IP SET ROUTE {|} INTERFACE {|NONE}<br />
Description This command sets the interface used by a route previously created by the IP ADD<br />
ROUTE command. If you want the existing route to route to an address via a<br />
gateway device, use none so that no interface is set.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
interface<br />
NONE<br />
A name that identifies an existing route. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
A number that identifies an existing route.<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The number appears in<br />
the first column under the heading ID.<br />
The name of the existing interface that the<br />
ip routes through, displayed in the IPv4<br />
format (e.g. 192.168.102.3)<br />
To display interface names, use the IP LIST<br />
INTERFACES command.<br />
No interface is set. This is used for routes<br />
that route via a gateway device instead of<br />
an interface.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> ip set route r1 interface eth1<br />
See also IP LIST INTERFACES<br />
IP LIST ROUTES<br />
IP SHOW<br />
Syntax IP SHOW<br />
Description Shows current RIP configuration and any other information global to the router.<br />
Example --> ip show<br />
Global IP configuration:<br />
Host routes: true<br />
Poison reverse: false
126 Chapter 5 – IP<br />
See also IP SET RIP HOSTROUTES<br />
IP SET RIP POISON<br />
IP SHOW INTERFACE<br />
Syntax IP SHOW INTERFACE {|}<br />
Description This command displays the following information about a named interface:<br />
• IP address and netmask (if set)<br />
• MTU (Maximum Transmission Unit)<br />
• Status of DHCP and NAT<br />
• Status of TCP MSS Clamp<br />
• Status of RIP send and RIP accept<br />
• Status of RIP multicast<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
A number that identifies an existing IP<br />
interface. To display interface numbers, use<br />
the IP LIST INTERFACES command. The<br />
number appears in the first column under<br />
the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip show interface ip2<br />
IP Interface: ip2<br />
IP address: 192.168.102.3<br />
Netmask: 255.255.255.0<br />
MTU: 1500<br />
DHCP: disabled<br />
TCP MSS Clamp: disabled<br />
Accept RIP V1: true<br />
Send RIP V1: false<br />
Accept RIP V2: true<br />
Send RIP V2: false<br />
Multicast RIP V2: disabled<br />
--> ip show interface ip3<br />
IP Interface: ip3 - virtual [ip2]<br />
IP address: 192.168.50.10<br />
Netmask: 255.255.255.0<br />
MTU: 1500<br />
DHCP: disabled
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 127<br />
TCP MSS Clamp: disabled<br />
Accept RIP V1: true<br />
Send RIP V1: false<br />
Accept RIP V2: true<br />
Send RIP V2: false<br />
Multicast RIP V2: disabled<br />
See also IP SHOW<br />
IP SHOW ROUTE<br />
IP LIST INTERFACES<br />
IP SHOW ROUTE<br />
Syntax IP SHOW ROUTE {|}<br />
Description This command displays the following information about a named route:<br />
• Destination IP address<br />
• Netmask<br />
• Gateway IP address (if applicable)<br />
• Cost: the number of hops counted as the cost of the route<br />
• Interface name (if applicable)<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existingroute. To<br />
display route names, use the IP LIST<br />
ROUTES command.<br />
A number that identifies an existing route.<br />
To display route numbers, use the IP LIST<br />
ROUTES command. The number appears in<br />
the first column under the heading ID.<br />
N/A<br />
N/A<br />
Example --> ip show route route3<br />
IP route: route3<br />
Destination: 192.168.102.3<br />
Netmask: 255.255.255.0<br />
Gateway: 192.168.108.3<br />
Cost: 1<br />
Interface:<br />
See also IP SHOW<br />
IP LIST ROUTES
128 Chapter 6 – Transports<br />
Chapter 6<br />
Transports<br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 residential Gateway to manage the Transport module.<br />
<br />
Throughout this section, the syntax is used to generically<br />
represent a transport module like PPPOE or Ethernet.<br />
This module allows you to clear, delete, list and display information about existing<br />
transports that were created using the add transport<br />
commands. To carry out more detailed configuration of transports, see the<br />
corresponding transport module chapter:<br />
• For PPPoE commands, see PPPoE CLI commands<br />
• For Ethernet commands, see Ethernet CLI commands
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 129<br />
Transports CLI commands<br />
The table below lists the Transports commands provided by the CLI:<br />
Command<br />
TRANSPORTS CLEAR<br />
TRANSPORTS DELETE<br />
TRANSPORTS LIST<br />
TRANSPORTS SHOW<br />
TRANSPORTS CLEAR<br />
Syntax TRANSPORTS CLEAR<br />
Description This command deletes all transports that were created using the <br />
ADD TRANSPORT command.<br />
Example --> transports clear<br />
See also TRANSPORTS DELETE<br />
TRANSPORTS DELETE<br />
Syntax TRANSPORTS DELETE {|}<br />
Description This command deletes a single transport that was created using the<br />
ADD TRANSPORT command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value for each option (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing transport.<br />
To display transport names, use the<br />
TRANSPORTS LIST command.<br />
A number that identifies an existing<br />
transport. To display transport numbers,<br />
use the TRANSPORTS LIST command.<br />
N/A<br />
N/A<br />
Example --> transports delete eth1<br />
See also TRANSPORTS CLEAR<br />
TRANSPORTS LIST
130 Chapter 6 – Transports<br />
TRANSPORTS LIST<br />
Syntax TRANSPORTS LIST<br />
Description This command lists all currently existing transports. It displays the following<br />
information about the transports:<br />
Services:<br />
• transport identification number<br />
• transport name<br />
• transport type (PPP or Ethernet)<br />
• Number of transmitted/received packets for each transport<br />
Example --> transports list<br />
ID | Name | Type<br />
-----|--------------|-----------------------------------------------------<br />
1 | default | Ethernet | TxPkts: 142/0 RxPkts: 10625/0<br />
2 | voip | Ethernet | TxPkts: 0/0 RxPkts: 0/0<br />
--------------------------------------------------------------------------<br />
See also TRANSPORTS SHOW<br />
TRANSPORTS SHOW<br />
Syntax TRANSPORTS SHOW {|}<br />
Description This command displays detailed information about an existing transport.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing transport.<br />
To display transport names, use the<br />
TRANSPORTS LIST command.<br />
A number that identifies an existing<br />
transport. To display transport numbers,<br />
use the TRANSPORTS LIST command.<br />
N/A<br />
N/A<br />
Example --> transports show default<br />
Ethernet Status<br />
Service<br />
Creator<br />
Description<br />
Ethernet<br />
Vlan<br />
: CLI<br />
: default<br />
: default
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 131<br />
If In Octets : 953676<br />
If Out Octets : 8962<br />
If In Errors : 0<br />
If Out Errors : 0<br />
Packets Sent : 142<br />
Good Packets Received : 10726<br />
Enabled<br />
: true<br />
Termination<br />
: Ip Interface: ip0<br />
Ether Channel<br />
Port<br />
: ethernet0<br />
See also TRANSPORTS LIST
132 Chapter 7 – Ethernet<br />
Chapter 7<br />
Ethernet<br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 residential Gateway to manage the Ethernet module<br />
Ethernet CLI commands<br />
The table below lists the Ethernet commands provided by the CLI.<br />
Command<br />
ETHERNET ADD TRANSPORT<br />
ETHERNET CLEAR TRANSPORTS<br />
ETHERNET DELETE TRANSPORT<br />
ETHERNET LIST PORTS<br />
ETHERNET LIST TRANSPORTS<br />
ETHERNET SHOW TRANSPORT<br />
ETHERNET ADD TRANSPORT<br />
Syntax ETHERNET ADD TRANSPORT <br />
Description This command adds a named ethernet transport that will manage traffic related<br />
only to the specified VLAN.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
vlanname<br />
A name that identifies an existing VLAN.<br />
See VLAN SHOW command to see the<br />
VLANs currently defined in the system.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 133<br />
Example --> ethernet add transport voip<br />
See also ETHERNET LIST TRANSPORTS<br />
ETHERNET LIST PORTS<br />
VLAN SHOW<br />
ETHERNET CLEAR TRANSPORTS<br />
Syntax ETHERNET CLEAR TRANSPORTS<br />
Description This command deletes all ethernet transports that were created using the<br />
ETHERNET ADD TRANSPORT command.<br />
<br />
Be very careful when using this command due to side effects.<br />
Removing all the transports result in detaching all the IP interfaces from the<br />
VLANs and therefore the unit can not longer be reached by any IP interface (i.e.<br />
via a telnet connection).<br />
Example --> ethernet clear transports<br />
See also ETHERNET DELETE TRANSPORT<br />
ETHERNET DELETE TRANSPORT<br />
Syntax ETHERNET DELETE TRANSPORT {|}<br />
<br />
Removing the transport named ʺdefaultʺ results in system failure. All the other<br />
IP interfaces will not be able to communicate externally.<br />
Description This command deletes a single ethernet transport.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing Ethernet<br />
transport. To display transport names, use<br />
the ETHERNET LIST TRANSPORTS<br />
command.<br />
A number that identifies an existing<br />
Ethernet transport. To display transport<br />
numbers, use the ETHERNET LIST<br />
TRANSPORTS command.<br />
N/A<br />
N/A<br />
Example --> ethernet delete transport eth1
134 Chapter 7 – Ethernet<br />
See also ETHERNET LIST TRANSPORTS<br />
ETHERNET LIST PORTS<br />
Syntax ETHERNET LIST PORTS<br />
Description This command lists the valid ports that can be used to transport ethernet data.<br />
Example --> ethernet list ports<br />
Valid port names:<br />
ethernet 0<br />
ethernet 1<br />
ETHERNET LIST TRANSPORTS<br />
Syntax ETHERNET LIST TRANSPORTS<br />
Description This command lists all ethernet transports that have been created using the<br />
ETHERNET ADD TRANSPORT command. It displays the transport identification<br />
number and name, and the name of the port that it uses to transport ethernet data.<br />
Example --> ethernet list transports<br />
Ethernet transports:<br />
ID | Name | Port<br />
-----|-----------|------------<br />
1 | default | ethernet0<br />
2 | voip | ethernet1<br />
------------------------------<br />
See also ETHERNET LIST PORTS<br />
ETHERNET SHOW TRANSPORT<br />
Syntax ETHERNET SHOW TRANSPORT {|}<br />
Description This command displays the name and port used by an existing Ethernet transport.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing Ethernet<br />
transport. To display transport names, use<br />
the ETHERNET LIST TRANSPORTS<br />
command.<br />
A number that identifies an existing<br />
Ethernet transport. To display transport<br />
numbers, use the ETHERNET LIST<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 135<br />
TRANSPORTS command.<br />
Example --> ethernet show transport default<br />
Ethernet transport: default<br />
Description: Default<br />
Port: ethernet0<br />
See also ETHERNET LIST TRANSPORTS
136 Chapter 8 – Security & Firewall<br />
Chapter 8<br />
Security & Firewall<br />
Introduction<br />
This section describes the AT-RG613, AT-RG623 and AT-RG656 built-in security<br />
facilities, and how to configure and monitor them.<br />
The Internet is a network that allows access to vast amounts of information and<br />
potential customers. However, the Internet is not controlled and certain individuals<br />
use it destructively. These individuals attack other users’ computer systems for<br />
entertainment and/or profit.<br />
The security system is designed to allow safe access to the Internet by enforcing a set<br />
of access rules between the various interfaces of the product. To configure these<br />
rules at least two interfaces have to be defined — one interface is attached to the<br />
public network (e.g., the Internet), and the other interface is attached to an internal<br />
private network (intranet) that requires protection. The security prevents<br />
unrestricted access to the private network and protects the computer systems from<br />
attack.<br />
The security system provides a single link between the private network and the<br />
public network, it is also uniquely positioned to provide a single point where all<br />
traffic entering and leaving the private network can be logged and monitored. This<br />
information is useful for providing a security audit trail.<br />
Currently, two main security technologies are recognized that are briefly explained<br />
in the following.<br />
Application Gateway<br />
This is the traditional approach used to build a firewall, where every connection<br />
between two networks is made via an application program (called a proxy) specific<br />
for that protocol. A session from the private network is terminated by the proxy,<br />
which then creates another separate session to the end destination.<br />
Typically, a proxy is designed with a detailed knowledge of how the protocol works<br />
and what is allowed or not. This approach is very CPU intensive and very<br />
restrictive. Only protocols that have specific proxies configured are allowed through<br />
the security system; all other traffic is rejected. In practice most third-party proxies
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 137<br />
are transparent proxies, which pass all traffic between the two sessions without<br />
regard to the data.<br />
Stateful Inspection<br />
A more recent approach to security design uses a method called “stateful inspection”.<br />
Stateful inspection is also referred to as dynamic packet filtering or context-based access<br />
control (CBAC).<br />
In this technology, an inspection module understands data in packets from the<br />
network layer (IP headers) up to the application layer. The inspection module<br />
checks every packet passing through the security system and makes access decisions<br />
based on the source, destination and service requested. The term stateful refers to the<br />
security system’s ability to remember the status of a flow. For example, whether a<br />
packet from the public Internet is returning traffic for a flow originated from the<br />
private intranet. The TCP state of TCP flows is also monitored, allowing<br />
inappropriate traffic to be discarded. The benefit of this approach is that stateful<br />
inspection security systems are generally faster, less demanding on hardware, and<br />
more adaptive to new Internet applications.<br />
Security support on AT-RG6xx Residential Gateway<br />
series<br />
The Security module is the main module in the AT-RG613, AT-RG623 and AT-RG656<br />
Residential Gateway that acts as server to the other two security modules, Firewall<br />
and NAT, forming the Security System (see Figure 7).<br />
The Security module makes it possible to:<br />
• enable/disable all modules in the Security System (including the child modules;<br />
NAT and Firewall)<br />
• add IP interfaces to the Security System to create security interfaces that are used<br />
to configure the NAT and Firewall child modules.<br />
• configure TCP/UDP ports that can be opened dynamically to allow sessions<br />
required by certain applications.<br />
• enable/disable binary address replacement for sessions using dynamically opened<br />
ports<br />
The AT-RG613, AT-RG623 and AT-RG656 security system implementation has the<br />
following features:<br />
• Dynamic packet filtering (stateful inspection) technology.<br />
• Application of dynamic filtering to traffic flows, using the base rule that all access<br />
from the outside (i.e., public interfaces) is denied unless specifically permitted<br />
and all access from the inside (i.e., private interfaces) is allowed unless<br />
specifically denied.<br />
• The firewall will open only the required ports for the duration of a user session.<br />
• The firewall can be configured to limit internal access to the public network based<br />
on a policy setting.
138 Chapter 8 – Security & Firewall<br />
Security module<br />
Firewall module<br />
NAT<br />
module<br />
Figure 7. Security modules on AT-RG6xx Residential Gateway series.<br />
Security Interfaces<br />
On the AT-RG613, AT-RG623 and AT-RG656 it is possible to define three type of<br />
security interfaces interfaces : Internal, External and DMZ (see Figure 8)<br />
• An Internal interface is an IP interface that is attached to a network that needs to<br />
be protected from the network attached to the External interface. For example, an<br />
interface attached to a private LAN is an internal interface.<br />
• The External interface is an IP interface that is attached to a network, for example<br />
the Internet, containing hosts that may pose a security threat to hosts on the<br />
internal interfaces.<br />
• A DMZ (demilitarized zone) is an IP interface serving a small network that acts as<br />
a neutral zone between the inside network and the outside network. A DMZ is a<br />
portion of the local network that is almost completely open to the external<br />
network. There may be some restriction at external access to the DMZ, but much<br />
less than the restriction of access to the internal<br />
To define an existing IP interface as a security interface use the SECURITY ADD<br />
INTERFACE command.<br />
To show the security interfaces currently defined, use the SECURITY LIST<br />
INTERFACES command.<br />
<br />
Only one external security interface and one DMZ security interface can be<br />
defined.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 139<br />
External Network<br />
external interface<br />
DMZ Network<br />
DMZ interface<br />
internal interface<br />
Internal Network<br />
internal interface<br />
Internal Network<br />
internal interface<br />
Internal Network<br />
Figure 8. Security interfaces on AT-RG6xx Residential Gateway series.<br />
Dynamic Port Opening and Triggers<br />
Dynamic Port Opening is a companion feature to the filtering rules.<br />
The Dynamic port opening feature solves a typical security problem related to<br />
Internet applications that require secondary ports to be open in order for a session<br />
to operate.<br />
For example, an FTP control session operates on port 21, but FTP uses port 20 as a<br />
secondary port for the data transfer process. The more ports that are open, the<br />
greater the security risk. So, the “Dynamic Port Opening” service makes it possible<br />
to designate certain secondary ports that will only be opened when there is an active<br />
session on their associated primary port.<br />
AT-RG613, AT-RG623 and AT-RG656 use triggers to tell to the security mechanism<br />
to expect these secondary sessions and how to handle them. Rather than allowing a<br />
range of port numbers, triggers handle the situation dynamically, allowing the<br />
secondary sessions only when appropriate.<br />
The trigger mechanism works without having to understand the application<br />
protocol or reading the payload of the packet, (although the payload does need to be<br />
read when using NAT if address replacement has to be performed).<br />
Dynamic Port Opening makes use of triggers in the following way.<br />
The user configures the Residential Gateway with a list of primary port numbers for<br />
the applications that they want to handle using the SECURITY ADD TRIGGER<br />
command and uses the startport and endport fields to specify the range of primary<br />
port number(s).<br />
The Primary port number refers to the TCP/UDP port number to which the primary<br />
(starting) session of the application is established.<br />
Every time the router detects that an outgoing session has been established to one of<br />
these primary port numbers, it creates an entry in a table of currently open primary
140 Chapter 8 – Security & Firewall<br />
sessions. The table entry contains the IP addresses of the devices at each end of the<br />
session.<br />
Subsequently, if an incoming session-establishment packet arrives at the router, the<br />
source and destination addresses of the packet are compared against the entries in<br />
the table of currently open primary sessions.<br />
If there are no matches, the packet is discarded. If there are one or more matches,<br />
then the router carries out a port-probing process.<br />
In the port-probing process, the router runs through the list of matching sessions.<br />
For each session, it sends a packet to the private IP address in the table entry. The<br />
destination port number in this packet is the destination port number in the<br />
incoming packet.<br />
In the case of TCP, the probe packet is a TCP SYN packet. In the case of UDP, the<br />
packet is just a small UDP packet.<br />
Depending on the response that the router gets back from the probe packet, it can<br />
work out whether the local host was expecting to receive an incoming session to that<br />
port number.<br />
If the port probing process does find a local host that was expecting the incoming<br />
session, then the session is established. If a local host is not found, then the packet is<br />
discarded.<br />
This mechanism enables the router to allow in only those incoming secondary<br />
sessions that should be allowed in, and can reject malicious attempts to establish<br />
incoming sessions.<br />
Although FTP is given as an example of a protocol that requires dynamic port<br />
opening, because FTP is such a very common application, the dynamic port opening<br />
for FTP is enabled in the software by default, and does not have to be configured by<br />
the user.<br />
Non-Activity Timeout<br />
The dynamic port opening process opens secondary ports, as described above.<br />
Typically, it will detect when a session using a secondary port is being closed (ie an<br />
exchange of FIN, FIN/ACK packets) and stop passing packets for that session.<br />
However, UDP sessions do not have a specific close-down process. Also, TCP<br />
sessions might be terminated without a proper close-down (for example, the host at<br />
one end of the session might be simply turned off). So, there needs to be a criterion<br />
for deciding when to remove a session in these cases. The method that the router<br />
uses is for the user to configure an inactivity time. If there has been no activity (no<br />
exchange of packets) on the secondary session for the specified period of time, the<br />
session is closed (ie the router will no longer forward any packets for that session).<br />
Session Chaining<br />
There are some applications (Netmeeting is the most well-known of these) in which<br />
the secondary sessions may, themselves, spawn their own secondary sessions. This<br />
process is known as session chaining.<br />
If a dynamic port opening definition is being configured for such an application,<br />
then the user needs to configure this definition to have session chaining on.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 141<br />
In this case, when secondary sessions are successfully established, the<br />
source/destination addresses of the session will also be added to the table of<br />
currently open primary sessions.<br />
To set a trigger for a session chaining that will enable chaining of TCP sessions, use<br />
the SECURITY SET TRIGGER SESSIONCHAINING command.<br />
To set a trigger for a session chaining that will enable chaining of UDP sessions, use<br />
the SECURITY SET TRIGGER UDPSESSIONCHAINING command.<br />
<br />
TCP session chaining must be always enabled if UDP session chaining is to be<br />
used. Itʹs not possible define a UDP session chaining without previously<br />
enabling TCP session chaining.<br />
Disabling TCP session chaining also automatically disables UDP session<br />
chaining.<br />
Firewall<br />
The AT-RG613, AT-RG623 and AT-RG656 security system implements a stateful<br />
Firewall providing high security by blocking certain incoming traffic based on<br />
stateful information.<br />
Each time outbound packets are sent from an internal host to an external host, the<br />
following information is logged by the Firewall:<br />
• port number<br />
• sequencing information<br />
• additional flags for each connection associated with that particular internal host<br />
All inbound packets are compared against this logged information and only allowed<br />
through the Firewall if it can be determined that they are part of an existing<br />
connection. This makes it very difficult for hackers to break through the stateful<br />
Firewall, because they would need to know addresses, port numbers, sequencing<br />
information and individual connection flags for an existing session to an internal<br />
host.<br />
Firewall behaviour is managed by the firewall module. The firewall module offers<br />
the ablitiy to:<br />
• control what kind of Firewall activity is logged<br />
• protect the internal network using stateful firewall functionality<br />
• create policies<br />
• add validators to policies<br />
• add portfilters to to policies<br />
• enable/disable and configure Intrusion Detection Settings (IDS)<br />
In order to access firewall features, the firewall module must be enabled using the<br />
firewall enable command.<br />
Figure 9 shows the entities involved in the firewall module and their relationships.
142 Chapter 8 – Security & Firewall<br />
Policy<br />
A policy is a relationship between two security interfaces where it is possible to<br />
assign portfilter and validator rules between them.<br />
There are three different security interface combinations that Firewall policies can be<br />
created between:<br />
• the external interface and the internal interface<br />
• the external interface and the DMZ interface<br />
• the DMZ interface and the internal interface<br />
To add a policy between one of the three above interface combinations use the<br />
FIREWALL ADD POLICY command.<br />
Portifilter<br />
A portfilter is a rule that determines how the Firewall should handle packets being<br />
transported between two security interfaces that are defined in an existing policy.<br />
The rules define:<br />
• what protocol type is allowed (specified using the protocol number or the<br />
protocol name)<br />
• the range of source and destination port numbers allowed<br />
• the direction that packets are allowed to travel in (inbound, outbound, neither or<br />
both)<br />
To add a portfilter to an existing policy use the FIREWALL ADD PORTFILTER<br />
command.<br />
More than one portfilter object can be added to the same policy.<br />
Validator<br />
A validator is a rule that determines how the Firewall handles packets based on the<br />
source or destination IP address. The policy that the validator belongs to determines<br />
whether packets to/from the specified IP address are allowed or blocked<br />
To add a validator to an existing policy use the FIREWALL ADD VALIDATOR<br />
command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 143<br />
Firewall<br />
IDS<br />
policies<br />
li t<br />
policy<br />
#1<br />
policy<br />
#2<br />
refers to an interface combination<br />
(e.g. external-internal)<br />
policy<br />
#<br />
portfilters<br />
li t<br />
portfilter<br />
#1<br />
portfilter<br />
#2<br />
could refer to ports and traffic<br />
direction Source/Destination<br />
could refer to transport protocol<br />
and traffic direction<br />
portfilter<br />
#<br />
could refer to application and<br />
traffic direction protocol<br />
validators<br />
li t<br />
validator<br />
#1<br />
validator<br />
#2<br />
refers to Source/Destination ,IP<br />
address and traffic direction<br />
validator<br />
#<br />
Figure 9. Firewall module and related objects.<br />
Intrusion Detection<br />
Intrusion Detection is a feature that looks for traffic patterns that correspond to<br />
certain known types of attack from suspicious hosts that attempt to damage the<br />
network or to prevent legitimate users from using it.<br />
The Intrusion Detection protects the system from the following kinds of attacks:<br />
• DOS (Denial of Service) attacks - a DOS attack is an attempt by an attacker to<br />
prevent legitimate hosts from accessing a service.<br />
• Port Scanning - an attacker scans a system in an attempt to identify any open<br />
ports.<br />
• Web Spoofing - an attacker creates a ʹshadowʹ of the World Wide Web on their<br />
own machine, however a legitimate host sees this as the ʹrealʹ WWW. The attacker<br />
uses the shadow WWW to monitor the hostʹs activities and send false data to and<br />
from the hostʹs machine.
144 Chapter 8 – Security & Firewall<br />
Intrusion Detection works differently for each type of attack:<br />
• For DOS (Denial of Service) attacks, itʹs possible to set three maximum parameter<br />
levels:<br />
• the maximum number of ICMP packets allowed before a flood is detected<br />
(using FIREWALL SET IDS MAXICMP command)<br />
• the maximum number of pings allowed before an Echo Storm is detected<br />
(using FIREWALL SET IDS MAXPING command)<br />
• the maximum number of unfinished TCP handshakes allowed before a<br />
flood is detected (using FIREWALL SET IDS<br />
MAXTCPOPENHANDSHAKE command)<br />
Once a maximum level is reached, an intrusion attempt is detected and the attacker<br />
is blocked by the Firewall for the time limit specified by the FIREWALL SET IDS<br />
DOSATTACKBLOCK command (default is 30 minutes).<br />
• For Port Scan attacks, once an attacker scanning your systemʹs ports has been<br />
identified, they are blocked by the Firewall for the time limit specified in the<br />
FIREWALL SET IDS SCANATTACKBLOCK command.<br />
• For Web Spoofing attacks, packets destined for the victim of a spoofing attack are<br />
blocked by the Firewall for the time limit specified in the FIREWALL SET IDS<br />
VICTIMPROTECTION command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 145<br />
Security Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the Security<br />
module.<br />
Security CLI commands<br />
The table below lists the security commands provided by the CLI.<br />
Command<br />
SECURITY ADD INTERFACE<br />
SECURITY ADD TRIGGER TCP|UDP<br />
SECURITY ADD TRIGGER NETMEETING<br />
SECURITY CLEAR INTERFACES<br />
SECURITY CLEAR TRIGGERS<br />
SECURITY DELETE INTERFACE<br />
SECURITY DELETE TRIGGER<br />
SECURITY<br />
SECURITY LIST INTERFACES<br />
SECURITY LIST TRIGGERS<br />
SECURITY SET TRIGGER UDPSESSIONCHAINING<br />
SECURITY SET TRIGGER ADDRESSREPLACEMENT<br />
SECURITY SET TRIGGER BINARYADDRESSREPLACEMENT<br />
SECURITY SET TRIGGER ENDPORT<br />
SECURITY SET TRIGGER MAXACTINTERVAL<br />
SECURITY SET TRIGGER MULTIHOST<br />
SECURITY SET TRIGGER SESSIONCHAINING<br />
SECURITY SET TRIGGER STARTPORT<br />
SECURITY SHOW INTERFACE<br />
SECURITY SHOW TRIGGER<br />
SECURITY STATUS<br />
SECURITY ADD INTERFACE<br />
Syntax SECURITY ADD INTERFACE {EXTERNAL|INTERNAL|DMZ}<br />
Description This command adds an existing IP interface to the Security package to create a
146 Chapter 8 – Security & Firewall<br />
security interface, and specifies what type of interface it is depending on how it<br />
connects to the network.<br />
Once security interfaces have been added, they can be used in the NAT and/or<br />
Firewall configurations.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
EXTERNAL<br />
INTERNAL<br />
DMZ<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
An interface that connects to the external<br />
network.<br />
An interface that connects to the internal<br />
network<br />
An interface that connects to the demilitarized<br />
zone (DMZ)<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> security add interface ip1 internal<br />
See also IP LIST INTERFACES<br />
FIREWALL CLI COMMANDS<br />
NAT CLI COMMANDS<br />
SECURITY ADD TRIGGER TCP|UDP<br />
Syntax SECURITY ADD TRIGGER {TCP|UDP} <br />
Description This command adds a trigger to the Security module.<br />
A trigger allows an application to open a secondary port in order to transport<br />
packets.<br />
Some applications, such as FTP, need to open secondary ports - they have a control<br />
session port (21 for FTP) but also need to use a second port in order to transport<br />
data. Adding a trigger means that you do not have to define static portfilters to open<br />
ports for each secondary session. If you did this, the ports would remain open for<br />
potential use (or misuse, see the command FIREWALL SET IDS<br />
SCANATTACKBLOCK) until the portfilters were deleted. A trigger opens a<br />
secondary port dynamically, and allows you to specify the length of time that it can<br />
remain inactive before it is closed.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name An arbitrary name that identifies the N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 147<br />
trigger. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
TCP<br />
UDP<br />
startport<br />
endport<br />
maxactinterval<br />
Adds a trigger for a TCP application to the<br />
security package.<br />
Adds a trigger for a UDP application to the<br />
security package.<br />
Sets the start of the trigger port range for<br />
the control session.<br />
Sets the end of the trigger port range for the<br />
control session.<br />
Sets the maximum interval time (in<br />
milliseconds) between the use of secondary<br />
port sessions. If a secondary port opened by<br />
a trigger has not been used for the specified<br />
time, it is closed.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
3000<br />
Example The following example creates an FTP (File Transfer Protocol) trigger:<br />
--> security add trigger t1 tcp 21 21 3000<br />
See also SECURITY LIST TRIGGERS<br />
SECURITY ADD TRIGGER NETMEETING<br />
Syntax SECURITY ADD TRIGGER NETMEETING<br />
Description This command allows you to add a trigger to allow Netmeeting to transport data<br />
through the security package.<br />
This application opens a secondary port session. You do not have to set the port<br />
range or maxactinterval for a Netmeeting trigger - the CLI automatically sets this for<br />
you.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
An arbitrary name that identifies the<br />
trigger. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
N/A<br />
Example --> security add trigger t2 netmeeting<br />
See also SECURITY LIST TRIGGERS<br />
SECURITY ADD TRIGGER TCP|UDP
148 Chapter 8 – Security & Firewall<br />
SECURITY CLEAR INTERFACES<br />
Syntax SECURITY CLEAR INTERFACES<br />
Description This command removes all security interfaces that were added to the Security<br />
package using the SECURITY ADD INTERFACE command.<br />
Example --> security clear interfaces<br />
See also SECURITY DELETE INTERFACE<br />
SECURITY CLEAR TRIGGERS<br />
Syntax SECURITY CLEAR TRIGGERS<br />
Description This command deletes all triggers that were added to the Security module using the<br />
SECURITY ADD TRIGGER commands.<br />
Example --> security clear triggers<br />
See also SECURITY DELETE TRIGGER<br />
SECURITY DELETE INTERFACE<br />
Syntax SECURITY DELETE INTERFACE <br />
Description This command removes a single security interface that was added to the Security<br />
package using the SECURITY ADD INTERFACE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing security<br />
interface. To display interface names, use<br />
the SECURITY LIST INTERFACES<br />
command.<br />
N/A<br />
Example --> security delete interface f1<br />
See also SECURITY CLEAR INTERFACES<br />
SECURITY LIST INTERFACES<br />
SECURITY DELETE TRIGGER<br />
Syntax SECURITY DELETE TRIGGER <br />
Description This command deletes a single trigger that was added to the Security module using
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 149<br />
the SECURITY ADD TRIGGER commands.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGER command.<br />
N/A<br />
Example --> security delete trigger t2<br />
See also SECURITY LIST TRIGGERS<br />
SECURITY CLEAR TRIGGERS<br />
SECURITY<br />
Syntax SECURITY {ENABLE | DISABLE}<br />
Description This command explicitly enables/disables all modules in the Security package<br />
(including the child modules; NAT and Firewall).<br />
<br />
<br />
You must enable the Security package if you want to use the NAT and/or<br />
Firewall modules to configure security for your system.<br />
If you disable the Security package during a session, any configuration changes<br />
made to the Security, NAT or Firewall modules when the package was enabled<br />
remain in the system, so that you can re-enable them later in the session. If you<br />
need to reboot the Residential Gateway but want to save the security<br />
configuration between sessions, use the system config save command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLED<br />
DISABLED<br />
Enables all modules in the Security package<br />
(Security, NAT and Firewall modules).<br />
Disables all modules in the Security<br />
package (Security, NAT and Firewall<br />
modules).<br />
disabled<br />
Example --> security enable<br />
See also FIREWALL SET SECURITYLEVEL
150 Chapter 8 – Security & Firewall<br />
SECURITY LIST INTERFACES<br />
Syntax SECURITY LIST INTERFACES<br />
Description This command lists the following information about security interfaces that were<br />
added to the Security package using the SECURITY ADD INTERFACE command:<br />
• Interface ID number<br />
• Interface name<br />
• Interface type (external, internal or DMZ)<br />
Example --> security list interfaces<br />
Security Interfaces:<br />
ID | Name | Type<br />
-----|----------|----------<br />
1 | i1 | internal<br />
2 | i2 | external<br />
3 | i3 | dmz<br />
---------------------------<br />
See also SECURITY SHOW INTERFACE<br />
SECURITY LIST TRIGGERS<br />
Syntax SECURITY LIST TRIGGERS<br />
Description This command lists triggers that were added to the Security module using the<br />
SECURITY ADD TRIGGER command. It displays the following information about<br />
triggers:<br />
• Trigger ID number<br />
• Trigger name<br />
• Trigger transport type (TCP or UDP)<br />
• Port range<br />
• Interval<br />
Example --> security list triggers<br />
Security Triggers:<br />
ID | Name | Type | Port Range | Interval<br />
---------------------------------------------<br />
1 | tr1 | tcp | 21 - 21 | 3000<br />
2 | tr2 | tcp | 1720 - 1720 | 3000<br />
---------------------------------------------<br />
See also SECURITY SHOW TRIGGER<br />
SECURITY SET TRIGGER UDPSESSIONCHAINING<br />
Syntax SECURITY SET TRIGGER UDPSESSIONCHAINING {ENABLE | DISABLE}
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 151<br />
Description This command determines whether or not a UDP dynamic session can become also<br />
a triggering session.<br />
If UDP session chaining is enabled, both UDP and TCP dynamic sessions also<br />
become triggering sessions, which allows multi-level session triggering.<br />
<br />
<br />
UDP session chaining can be enabled only if a TCP session chaining is already<br />
enabled on the same trigger using the security set trigger sessionchaining<br />
command.<br />
This CLI command is case-sensitive. The command must be typed exactly as<br />
they appear in the syntax section on this page otherwise a syntax error message<br />
is returned.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
Enables UDP sessionchaining on an existing<br />
trigger. TCP and UDP session chaining is<br />
allowed if the SECURITY SET TRIGGER<br />
SESSIONCHAINING command is enabled.<br />
Disables UDP session chaining on an<br />
existing trigger. TCP session chaining is<br />
allowed if the SECURITY SET TRIGGER<br />
SESSIONCHAINING command is enabled.<br />
N/A<br />
disabled<br />
Example --> security set trigger t3 UDPsessionchaining enable<br />
See also SECURITY SET TRIGGER SESSIONCHAINING<br />
SECURITY SET TRIGGER ADDRESSREPLACEMENT<br />
Syntax SECURITY SET TRIGGER ADDRESSREPLACEMENT<br />
{NONE|TCP|UDP|BOTH}<br />
Description The settings in this command are only effective if you enable address translation<br />
using the command SECURITY SET TRIGGER BINARYADDRESSREPLACEMENT.<br />
This command allows you to specify what type of address replacement is set on an<br />
trigger. Incoming and outgoing packets are searched in order to find any IP<br />
addresses embedded in the payload. Any IP addresses that are found are then<br />
compared with the public and private addresses being used by NAT. If the<br />
addresses that have been found would have been translated by NAT (had they been
152 Chapter 8 – Security & Firewall<br />
in the packet header), then they are translated and the original addresses in the<br />
payload are replaced by the translated addresses.<br />
You can specify whether you want to carry out address replacement on TCP<br />
packets, on UDP packets or on both TCP and UDP packets.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
NONE<br />
TCP<br />
UDP<br />
BOTH<br />
A name that identifies an trigger. To display<br />
trigger names, use the SECURITY LIST<br />
TRIGGERS command.<br />
Disables address replacement.<br />
Sets address replacement on TCP packets<br />
for an existing trigger.<br />
Sets address replacement on UDP packets<br />
for an existing trigger.<br />
Sets address replacement on TCP and UDP<br />
packets for an existing trigger.<br />
N/A<br />
none<br />
Example --> security set trigger t2 addressreplacement tcp<br />
See also SECURITY SET TRIGGER BINARYADDRESSREPLACEMENT<br />
SECURITY SET TRIGGER<br />
BINARYADDRESSREPLACEMENT<br />
Syntax SECURITY SET TRIGGER BINARYADDRESSREPLACEMENT {ENABLE |<br />
DISABLE}<br />
Description This command enables/disables binary address replacement on an existing trigger.<br />
You can then set the type of address replacement (TCP, UDP, both or none) using<br />
the command SECURITY SET TRIGGER ADDRESSREPLACEMENT.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
Enables the use of binary address<br />
replacement on an existing trigger.<br />
Disables the use of binary address<br />
replacement on an existing trigger.<br />
N/A<br />
disabled
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 153<br />
Example --> security set trigger t5 binaryaddressreplacement enable<br />
See also SECURITY SET TRIGGER ADDRESSREPLACEMENT<br />
SECURITY LIST TRIGGERS<br />
SECURITY SET TRIGGER ENDPORT<br />
Syntax SECURITY SET TRIGGER ENDPORT <br />
Description This command sets the end of the port number range for an existing trigger.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
N/A<br />
portnumber Sets the end of the trigger port range. N/A<br />
Example --> security set trigger t3 endport 21<br />
See also SECURITY SET TRIGGER STARTPORT<br />
SECURITY SET TRIGGER MAXACTINTERVAL<br />
Syntax SECURITY SET TRIGGER MAXACTINTERVAL <br />
Description This command sets the maximum activity interval limit on existing session entries<br />
for an existing trigger.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interval<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
Sets the maximum interval time (in<br />
milliseconds) between the use of secondary<br />
port sessions. If a secondary port opened by<br />
a trigger has not been used for the specified<br />
time, it is closed.<br />
N/A<br />
N/A<br />
Example --> security set trigger t2 maxactinterval 5000<br />
See also SECURITY LIST TRIGGERS
154 Chapter 8 – Security & Firewall<br />
SECURITY SET TRIGGER MULTIHOST<br />
Syntax SECURITY SET TRIGGER MULTIHOST {ENABLE | DISABLE}<br />
Description This command sets whether or not a secondary session can be initiated to/from<br />
different remote hosts or the same remote host on an existing trigger.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
A secondary session can be initiated to/from<br />
different remote hosts.<br />
A secondary session can only be initiated<br />
to/from the same remote host.<br />
N/A<br />
disabled<br />
Example --> security set trigger t1 multihost enable<br />
See also SECURITY LIST TRIGGERS<br />
SECURITY SET TRIGGER SESSIONCHAINING<br />
Syntax SECURITY SET TRIGGER SESSIONCHAINING {ENABLE | DISABLE}<br />
Description This command determines whether or not triggering sessions can be chained. If<br />
session chaining is enabled, TCP dynamic sessions also become triggering sessions,<br />
which allows multi-level session triggering.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
Enables TCP sessionchaining on an existing<br />
trigger.<br />
Disables all session chaining (TCP and<br />
UDP) on an existing trigger.<br />
N/A<br />
disabled<br />
Example --> security set trigger t4 sessionchaining enable<br />
See also SECURITY SET TRIGGER UDPSESSIONCHAINING
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 155<br />
SECURITY SET TRIGGER STARTPORT<br />
Syntax SECURITY POLICY SET TRIGGER STARTPORT <br />
Description This command sets the start of the port number range for an existing trigger.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
N/A<br />
portnumber Sets the start of the trigger port range. N/A<br />
Example --> security set trigger t3 startport 21<br />
See also SECURITY SET TRIGGER ENDPORT<br />
SECURITY SHOW INTERFACE<br />
Syntax SECURITY SHOW INTERFACE <br />
Description This command displays information about a single interface that was added to the<br />
Security package using the SECURITY ADD INTERFACE command. The following<br />
interface information is displayed:<br />
• Interface name<br />
• Interface type (external, internal or DMZ)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
N/A<br />
Example --> security show interface f2<br />
Interface name: f2<br />
Interface type: internal<br />
See also SECURITY LIST INTERFACES<br />
SECURITY SHOW TRIGGER<br />
Syntax SECURITY SHOW TRIGGER
156 Chapter 8 – Security & Firewall<br />
Description This command displays information about a single trigger that was added to the<br />
Security module using the SECURITY ADD TRIGGER command. The following<br />
trigger information is displayed:<br />
• Trigger name<br />
• Transport type (TCP or UDP)<br />
• Start of the port range<br />
• End of the port range<br />
• Multiple host permission (true/false)<br />
• Maximum activity interval (in milliseconds)<br />
• Session chaining permission (true/false)<br />
• Session chaining on UDP permission (true/false)<br />
• Binary address replacement permission (true/false)<br />
• Address translation type (UDP, TCP, none or both)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing trigger.<br />
To display trigger names, use the<br />
SECURITY LIST TRIGGERS command.<br />
N/A<br />
Example --> security show trigger t2<br />
Security Trigger: t2<br />
See also SECURITY LIST TRIGGERS<br />
Transport Type: tcp<br />
Starting port number: 1000<br />
Ending port number: 1000<br />
Allow multiple hosts: false<br />
Max activity interval: 30000<br />
Session chaining: false<br />
Session chaining on UDP: false<br />
Binary address replacement: false<br />
Address translation type: none<br />
SECURITY STATUS<br />
Syntax SECURITY STATUS<br />
Description This command displays the following information about the Security package:<br />
• Security status (enabled or disabled)<br />
• Firewall status (enabled or disabled)<br />
• Firewall security level setting (none, high, low, or medium)
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 157<br />
• Firewall session logging (enabled or disabled)<br />
• Firewall blocking logging (enabled or disabled)<br />
• Firewall intrusion logging (enabled or disabled)<br />
• NAT status (enabled or disabled)<br />
Example --> security status<br />
Security enabled.<br />
Firewall disabled.<br />
Firewall security level: none.<br />
Firewall session logging enabled.<br />
Firewall blocking logging enabled.<br />
Firewall intrusion logging disabled.<br />
NAT enabled<br />
See also SECURITY<br />
FIREWALL SET SECURITYLEVEL
158 Chapter 8 – Security & Firewall<br />
Firewall Command <strong>Reference</strong><br />
This section describes the commands available on AT-RG613, AT-RG623 and AT-<br />
RG656 Residential Gateway to enable, configure and manage the Firewall module.<br />
Firewall CLI commands<br />
The table below lists the firewall commands provided by the CLI:<br />
Command<br />
FIREWALL ADD POLICY<br />
FIREWALL ADD PORTFILTER<br />
FIREWALL ADD VALIDATOR<br />
FIREWALL CLEAR POLICIES<br />
FIREWALL CLEAR PORTFILTERS<br />
FIREWALL DELETE POLICY<br />
FIREWALL DELETE PORTFILTER<br />
FIREWALL DELETE VALIDATOR<br />
FIREWALL ENABLE|DISABLE<br />
FIREWALL ENABLE|DISABLE IDS<br />
FIREWALL ENABLE|DISABLE BLOCKINGLOG<br />
FIREWALL ENABLE|DISABLE INTRUSIONLOG<br />
FIREWALL ENABLE|DISABLE SESSIONLOG<br />
FIREWALL LIST POLICIES<br />
FIREWALL LIST PORTFILTERS<br />
FIREWALL LIST PROTOCOLS<br />
FIREWALL LIST VALIDATORS<br />
FIREWALL SET IDS DOSATTACKBLOCK<br />
FIREWALL SET IDS MAXICMP<br />
FIREWALL SET IDS MAXPING<br />
FIREWALL SET IDS MAXTCPOPENHANDSHAKE<br />
FIREWALL SET IDS SCANATTACKBLOCK<br />
FIREWALL SET IDS BLACKLIST<br />
FIREWALL SET IDS VICTIMPROTECTION<br />
FIREWALL SET SECURITYLEVEL<br />
FIREWALL SHOW IDS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 159<br />
FIREWALL SHOW POLICY<br />
FIREWALL SHOW PORTFILTER<br />
FIREWALL SHOW VALIDATOR<br />
FIREWALL STATUS<br />
FIREWALL ADD POLICY<br />
Syntax FIREWALL ADD POLICY {EXTERNAL-INTERNAL|EXTERNAL-DMZ|DMZ-<br />
INTERNAL} [ALLOWONLY-VAL]|[BLOCKONLY-VAL]<br />
Description This command creates a policy between two interface types. There are three types of<br />
policy that you can add to the firewall:<br />
• a policy between the external interface and the internal interface<br />
• a policy between the external interface and the DMZ interface<br />
• a policy between the DMZ interface and the internal interface<br />
A policy is the collective term for the rules that apply to incoming and outgoing<br />
traffic between two interface types. Once a policy is created using the FIREWALL<br />
ADD POLICY command, itʹs possible to create rules for the policy using the<br />
FIREWALL ADD PORTFILTER command.<br />
The FIREWALL ADD VALIDATOR command allows you to block/allow traffic<br />
based on the source and/or destination IP addresses and masks.<br />
The FIREWALL ADD POLICY command controls whether traffic is<br />
blocked/allowed for all of the validators that belong to a policy. There are two<br />
options:<br />
• allow only traffic to and/or from the IP address(es) set in the FIREWALL ADD<br />
VALIDATOR command. All other traffic is blocked by the Firewall.<br />
• block only traffic to and/or from the IP address(es) set in the FIREWALL ADD<br />
VALIDATOR command. All other traffic is allowed through the Firewall.<br />
Itʹs possible to set a Firewall security level that contains default policies using the<br />
FIREWALL SET SECURITYLEVEL command. Then, itʹs possible to customize the<br />
Firewall by adding specific portfilters and validators.<br />
<br />
If the allowonly-val or blockonly-val option is not specified, the blockonly-val option<br />
is considered as the default option value.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
An arbitrary name that identifies the policy.<br />
It can be made up of one or more letters or a<br />
combination of letters and digits, but it<br />
N/A
160 Chapter 8 – Security & Firewall<br />
cannot start with a digit.<br />
EXTERNAL-<br />
INTERNAL<br />
EXTERNAL-<br />
DMZ<br />
DMZ-<br />
INTERNAL<br />
ALLOWONLY-<br />
VAL<br />
BLOCKONLY-<br />
VAL<br />
A connection between the external network<br />
interface and the internal network interface.<br />
A connection between the external network<br />
interface and the de-militarized zone<br />
(DMZ).<br />
A connection between the de-militarized<br />
zone (DMZ) and the internal network<br />
interface.<br />
Allows only traffic to and/or from the IP<br />
address(es) set in the FIREWALL ADD<br />
VALIDATOR command. All other traffic is<br />
blocked.<br />
Blocks only traffic to and/or from the IP<br />
address(es) set in the FIREWALL ADD<br />
VALIDATOR command. All other traffic is<br />
allowed.<br />
N/A<br />
blockonly-val<br />
Example --> firewall add policy ext-dmz external-dmz blockonly-val<br />
See also FIREWALL SET SECURITYLEVEL<br />
FIREWALL ADD PORTFILTER<br />
FIREWALL ADD VALIDATOR<br />
FIREWALL ADD PORTFILTER<br />
Syntax FIREWALL ADD PORTFILTER {PROTOCOL }<br />
{INBOUND|OUTBOUND|BOTH}<br />
FIREWALL ADD PORTFILTER {TCP|UDP} <br />
{INBOUND|OUTBOUND|BOTH}<br />
FIREWALL ADD PORTFILTER <br />
{FTP|HTTP|ICMP|SMTP|TELNET} {INBOUND|OUTBOUND|BOTH}<br />
Description This command adds a portfilter to an existing firewall policy.<br />
Portfilters are individual rules that determine what kind of traffic (based on type of<br />
protocol or type of transport or type of application) can pass between the two<br />
interfaces specified in the FIREWALL ADD POLICY command.<br />
There are three ways that a portfilter can be defined, depending on the type of<br />
protocol that must be managed by the portfilter:<br />
• specify the number of a non-TCP or non-UDP protocol (for more information, see<br />
http://www.ietf.org/rfc/rfc1700.txt)<br />
• specify TCP or UDP protocol, together with an applicationʹs start/end port<br />
numbers
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 161<br />
• specify one of the listed protocols, applications or services. These are provided by<br />
the Firewall as popular examples that you can use. You do not need to specify the<br />
portnumber - the Firewall does this for you.<br />
It is VERY IMPORTANT to understand that when portfilters are created for TCP or<br />
UDP, then the effect of the filter is to allow/disallow packets that are starting a<br />
UDP or TCP session. Once a session has been established, the firewall recognizes<br />
subsequent packets in the session as belonging to an established session, and<br />
allows then through. This is because this is a Stateful firewall, and so is aware of<br />
the states of UDP/TCP sessions.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
policyname<br />
number<br />
startport<br />
endport<br />
INBOUND<br />
OUTBOUND<br />
BOTH<br />
An arbitrary name that identifies the<br />
portfilter. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
The number of a non-TCP or non-UDP<br />
protocol. Protocol numbers can be found at<br />
http://www.ietf.org/rfc/rfc1700.txt.<br />
The start of the port range for a TCP or UDP<br />
protocol.<br />
The end of the port range for a TCP or UDP<br />
protocol.<br />
Allows transport of packets of the specified<br />
protocol, application or service from an<br />
outside interface to an inside interface.<br />
Outbound transport of the packets is not<br />
allowed.<br />
Allows transport of packets of the specified<br />
protocol, application or service from an<br />
inside interface to an outside interface.<br />
Inbound transport of the packets is not<br />
allowed.<br />
Allows inbound and outbound transport of<br />
packets of the specified protocol,<br />
application or service between inside and<br />
outside interfaces.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Examples - specifying a protocol
162 Chapter 8 – Security & Firewall<br />
The following example allows IGMP (Internet Group Management Protocol)<br />
packets inbound from the external interface to the DMZ interface. IGMP is protocol<br />
number 2 (see http://www.ietf.org/rfc/rfc1700.txt).<br />
First, we need to create a policy:<br />
--> firewall add policy ext-dmz external-dmz<br />
Then we can add the portfilter to it:<br />
--> firewall add portfilter pf1 ext-dmz protocol 2 inbound<br />
- specifying a TCP/UDP protocol<br />
The following example allows DNS (Domain Name Service) sessions to be<br />
established in an outbound direction from the internal interface to the external<br />
interface. DNS uses UDP port 53 (see http://www.ietf.org/rfc/rfc1700.txt).<br />
First, we need to create a policy:<br />
--> firewall add policy ext-int external-internal<br />
Then we can add the portfilter to it:<br />
--> firewall add portfilter pf2 ext-int udp 53 53 outbound<br />
- using a provided protocol, application or service<br />
The following example allows SMTP (Simple Mail Transfer Protocol) sessions to be<br />
created in both the inbound and outbound directions between the internal interface<br />
and the DMZ interface. This is a popular protocol that is provided by the Firewall.<br />
You do not need to specify the portnumber - the Firewall does this for you.<br />
First, we need to create a policy:<br />
--> firewall add policy dmz-int dmz-internal<br />
Then we can add the portfilter to it:<br />
--> firewall add portfilter pf3 dmz-int smtp both<br />
See also FIREWALL LIST POLICIES<br />
See the Well Known Port Numbers section of RFC 1700 for a list of port numbers<br />
and protocols for particular services (see http://www.ietf.org/rfc/rfc1700.txt).<br />
FIREWALL ADD VALIDATOR<br />
Syntax FIREWALL ADD VALIDATOR {INBOUND|OUTBOUND|BOTH}<br />
<br />
Description This command adds a validator to an existing Firewall policy. A validator<br />
allows/blocks traffic based on the source/destination IP address and netmask.<br />
The command allows you to specify:<br />
• the IP address(es) and netmask(s) of the IP frames that are allowed to pass the<br />
firewall or that must be blocked by the firewall
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 163<br />
• the direction of traffic that must be allowed/blocked<br />
Once a validator is added to a policy, specifying the IP address and direction values,<br />
the same validator can be reused adding the validator to other policies.<br />
<br />
In order to add validators to a Firewall policy, the policy must have been<br />
previously created, which defines how traffic is allowed/blocked, using the<br />
allowonly-val or blockonly-val options in the FIREWALL ADD POLICY<br />
command:<br />
allowonly-val: only traffic based on the direction setting and the IP address(es)<br />
specified in the FIREWALL ADD VALIDATOR command is allowed. All other<br />
traffic is blocked.<br />
blockonly-val: only traffic based on the direction and the IP address(es) specified<br />
in the FIREWALL ADD VALIDATOR command is blocked. All other traffic is<br />
allowed.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
policyname<br />
INBOUND<br />
OUTBOUND<br />
BOTH<br />
An arbitrary name that identifies the<br />
portfilter. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
Validator acts on traffic originated from<br />
and/or directed to the IP addresses defined<br />
by the ipaddress and hostipmask fields in the<br />
following directions (depending on the<br />
interfaces involved by the policy):<br />
from External to Internal<br />
from External to DMZ<br />
from DMZ to Internal<br />
Validator acts on traffic originated from<br />
and/or directed to the IP addresses defined<br />
by the ipaddress and hostipmask fields in the<br />
following directions (depending on the<br />
interfaces involved by the policy):<br />
from Internal to External<br />
from DMZ to External<br />
from Internal to DMZ<br />
Validator acts on traffic originated from<br />
and/or directed to the IP addresses defined<br />
by the ipaddress and hostipmask fields in the<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A
164 Chapter 8 – Security & Firewall<br />
following directions (depending on the<br />
interfaces involved by the policy):<br />
from External to Internal and viceversa<br />
from External to DMZ and viceversa<br />
from DMZ to Internal and viceversa<br />
ipaddress<br />
hostipmask<br />
The IP address (or base address of the range<br />
of IP addresses) to which validator will<br />
apply. The address is in the IPv4 format<br />
(e.g. 192.168.102.3).<br />
The ipaddress value can represent either<br />
Source or Destination IP address.<br />
The netmask defining the range of IP<br />
addresses managed by the validator in the<br />
IPv4 format (e.g. 255.255.255.0).<br />
For example, if the validator is to apply to a<br />
whole class-c range then use the hostipmask<br />
255.255.255.0.<br />
If the validator is to apply to just a single IP<br />
address, use the specific IP mask<br />
255.255.255.255<br />
N/A<br />
N/A<br />
Example In the following example, a policy is created, then a validator added to block<br />
inbound and outbound traffic from/to the IP address stated. All other traffic is<br />
allowed.<br />
--> firewall add policy ext-int external-internal blockonly-val<br />
--> firewall add validator v1 ext-int both 192.168.102.3 255.255.255.255<br />
FIREWALL CLEAR POLICIES<br />
Syntax FIREWALL CLEAR POLICIES<br />
Description This command deletes all existing policies from the firewall configuration. Any<br />
portfilters associated with the policies are also deleted by this command.<br />
Example --> firewall clear policies<br />
See also FIREWALL ADD POLICY<br />
FIREWALL DELETE POLICY<br />
FIREWALL CLEAR PORTFILTERS<br />
Syntax FIREWALL CLEAR PORTFILTERS <br />
Description This command deletes all portfilters that were added to an existing firewall policy<br />
using the FIREWALL ADD PORTFILTER command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 165<br />
Option Description Default Value<br />
policyname<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall clear portfilters ext-int<br />
See also FIREWALL DELETE PORTFILTER<br />
FIREWALL LIST POLICIES<br />
FIREWALL DELETE POLICY<br />
Syntax FIREWALL DELETE POLICY <br />
Description This command deletes a single existing policy from the firewall configuration. All<br />
portfilters associated with the policy are also deleted by this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall delete policy ext-dmz<br />
See also FIREWALL CLEAR POLICIES<br />
FIREWALL LIST POLICIES<br />
FIREWALL DELETE PORTFILTER<br />
Syntax FIREWALL DELETE PORTFILTER <br />
Description This command deletes a single portfilter that was added to a firewall policy using<br />
the FIREWALL ADD PORTFILTER command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
policyname<br />
A name that identifies an existing portfilter.<br />
To display portfilter names, use the<br />
FIREWALL LIST PORTFILTER command.<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
N/A<br />
N/A
166 Chapter 8 – Security & Firewall<br />
FIREWALL LIST POLICIES command.<br />
Example --> firewall delete portfilter pf3 ext-int<br />
See also FIREWALL LIST POLICIES<br />
FIREWALL LIST PORTFILTERS<br />
FIREWALL CLEAR PORTFILTERS<br />
FIREWALL DELETE VALIDATOR<br />
Syntax FIREWALL DELETE VALIDATOR <br />
Description This command deletes a single validator from a named policy.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
policyname<br />
A name that identifies an existing validator.<br />
To display validator names, use the<br />
FIREWALL LIST VALIDATORS command.<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
N/A<br />
Example --> firewall delete validator v1 ext-int<br />
FIREWALL ENABLE|DISABLE<br />
Syntax FIREWALL {ENABLE | DISABLE}<br />
Description This command enables/disables the entire Firewall module except for the IDS<br />
portion of the module (see the command FIREWALL ENABLE|DISABLE IDS).<br />
<br />
Security module must be also enabled (using the command SECURITY<br />
ENABLE) in order to use the features of the Firewall module.<br />
When the Firewall is enabled, all IP traffic on existing security interfaces that are<br />
NOT included in a Firewall policy is blocked. For details on setting default<br />
policy security levels on security interfaces, see the FIREWALL SET<br />
SECURITYLEVEL command.<br />
If the Firewall module is disabled during a session, any configuration changes<br />
made when the Firewall was enabled remain in the Firewall, so that itʹs possible<br />
re-enable them later in the session.<br />
If the system must be rebooted and the Firewall configuration must be saved<br />
between sessions, use the SYSTEM CONFIG SAVE command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 167<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE Enables the Firewall module N/A<br />
DISABLE Disables the Firewall module. N/A<br />
Example --> firewall enable<br />
See also FIREWALL ENABLE|DISABLE IDS<br />
FIREWALL SET SECURITYLEVEL<br />
FIREWALL ENABLE|DISABLE IDS<br />
Syntax FIREWALL {ENABLE | DISABLE} IDS<br />
Description This command enables or disables the IDS (Intrusion Detection Service) portion of<br />
the Firewall.<br />
<br />
This module must be enabled in order to activate the settings specified in the<br />
FIREWALL IDS commands.<br />
This module depends on the Security module, which must be enabled before the<br />
enabling of the IDS can take effect.<br />
Itʹs not necessary to enable the Firewall module in order for the IDS to be active.<br />
If the IDS is disabled during a session, any configuration changes made when<br />
IDS was enabled remain, and can be re-enabled later in the session.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables the IDS portion of the Firewall<br />
module.<br />
Disables the IDS portion of the Firewall<br />
module.<br />
disable<br />
Example --> firewall enable IDS<br />
See also FIREWALL ENABLE|DISABLE
168 Chapter 8 – Security & Firewall<br />
FIREWALL ENABLE|DISABLE BLOCKINGLOG<br />
Syntax FIREWALL {ENABLE | DISABLE} BLOCKINGLOG<br />
Description This command enables/disables whether Firewall blocking activity is logged.<br />
<br />
To display logging information, the SYSTEM LOG feature must be enabled.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE The blocking log is displayed enable<br />
DISABLE The blocking log is not displayed enable<br />
Example --> firewall enable blocking log<br />
See also FIREWALL ENABLE|DISABLE<br />
FIREWALL ENABLE|DISABLE INTRUSIONLOG<br />
Syntax FIREWALL {ENABLE | DISABLE} INTRUSIONLOG<br />
Description This command enables/disables whether details of attempted Firewall intrusion<br />
activity are logged.<br />
<br />
To display logging information, the SYSTEM LOG feature must be enabled.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
The intrusion log is displayed.<br />
The intrusion log is not displayed.<br />
disable<br />
Example --> firewall enable intrusionlog<br />
See also FIREWALL ENABLE|DISABLE BLOCKINGLOG<br />
FIREWALL ENABLE|DISABLE SESSIONLOG<br />
FIREWALL ENABLE|DISABLE SESSIONLOG<br />
Syntax FIREWALL {ENABLE | DISABLE} SESSIONLOG
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 169<br />
Description This command enables/disables whether Firewall session events are logged.<br />
<br />
To display logging information, the SYSTEM LOG feature must be enabled.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
The log of session events is displayed<br />
The log of session events is not displayed.<br />
enable<br />
Example --> firewall enable sessionlog<br />
See also FIREWALL ENABLE|DISABLE BLOCKINGLOG<br />
FIREWALL LIST POLICIES<br />
Syntax FIREWALL LIST POLICIES<br />
Description This command lists the following information about policies that were added to the<br />
firewall using the FIREWALL ADD POLICY command:<br />
• Policy ID number<br />
• Policy name<br />
• Interface Type 1 and Interface Type 2 - the two interface types between which a<br />
policy exists (external - internal, external - DMZ or internal - DMZ)<br />
• Validator Allow Only status - true means that allowonly-val was set when the<br />
policy was created. False means that either blockonly-val was set, or no validator<br />
status was set (blockonly-val is the default setting if no status is specified).<br />
Example --> firewall list policies<br />
Firewall Policies:<br />
ID | Name | Type 1 | Type 2 | validator allow only<br />
--------------------------------------------------------<br />
1 | ext-dmz | external | dmz | true<br />
--------------------------------- ----------------------<br />
See also FIREWALL SHOW POLICY<br />
FIREWALL LIST PORTFILTERS<br />
Syntax FIREWALL LIST PORTFILTERS <br />
Description This command lists portfilters that were added to a firewall policy using the<br />
FIREWALL ADD PORTFILTER command. It displays the following information:<br />
• Portfilter ID number
170 Chapter 8 – Security & Firewall<br />
• Portfilter name<br />
• Type - port number range or specified port number<br />
• Port range used by the specified TCP or UDP protocol (e.g., 53 for DNS, 25 for<br />
SMTP). For non-TCP/UDP protocols, the port range is set to 0-0.<br />
• In - displays the inbound permission setting (true or false)<br />
• Out - displays the outbound permission setting (true or false)<br />
• Raw - displays whether or not the portfilter uses a non-TCP/UDP protocol (true<br />
or false)<br />
• TCP - displays whether or not the portfilter uses a TCP protocol (true or false)<br />
• UDP - displays whether or not the portfilter uses a UDP protocol (true or false)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
policyname<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall list portfilters ext-int<br />
Firewall Port Filters:<br />
ID | Name | Type | Port Range | In | Out | Raw | TCP | UDP<br />
----------------------------------------------------------------------<br />
1 | pf3 | 6 | 25 - 25 |true |true |false |true |false<br />
2 | pf2 | 17 | 53 - 53 |false |true |false |false |true<br />
3 | pf1 | 2 | 0 - 0 |true |false |true |false |false<br />
-----------------------------------------------------------------------<br />
See also FIREWALL LIST POLICIES<br />
FIREWALL SHOW PORTFILTER<br />
For a list of the port numbers and/or numbers assigned to protocols, see<br />
http://www.ietf.org/rfc/rfc1700.txt.<br />
FIREWALL LIST VALIDATORS<br />
Syntax FIREWALL LIST VALIDATORS <br />
Description This command lists the following information about validators added to a policy<br />
using the FIREWALL ADD VALIDATOR command:<br />
• Validator ID number<br />
• Validator name<br />
• Direction (inbound, outbound or both)<br />
• Host IP address
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 171<br />
• Host mask address<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
policyname<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall list validators ext-int<br />
Firewall Host Validators:<br />
ID | Name | Direction | Host IP | Mask<br />
-------------------------------------------------------------<br />
2 | v1 | both | 192.168.103.2 | 255.255.255.0<br />
1 | v2 | inbound | 192.168.103.1 | 255.255.255.0<br />
See also FIREWALL ADD VALIDATOR<br />
FIREWALL SHOW VALIDATOR<br />
FIREWALL SET IDS DOSATTACKBLOCK<br />
Syntax FIREWALL SET IDS DOSATTACKBLOCK <br />
Description This command sets, in the Intrusion Detection Setting (IDS), the duration of the<br />
block that is put in place when a DOS (Denial of Service) is detected. A DOS attack<br />
is an attempt by an attacker to prevent legitimate users from using a service. If a<br />
DOS attack is detected, all hosts that seem to be causing the attack are blocked by<br />
the firewall for a set time limit. This command allows you to specify the duration of<br />
the block.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
duration<br />
The length of time (in seconds) for which<br />
the firewall blocks suspicious hosts once a<br />
DOS attack attempt has been detected by<br />
the firewall.<br />
1800 (30 minutes)<br />
FIREWALL SET IDS MAXICMP<br />
Syntax FIREWALL SET IDS MAXICMP <br />
Description This command sets the maximum number of ICMP packets per second that are<br />
allowed by the Firewall before an ICMP Flood is detected. An ICMP Flood is a DOS
172 Chapter 8 – Security & Firewall<br />
(Denial of Service) attack. An attacker tries to flood the network with ICMP packets<br />
in order to prevent transportation of legitimate network traffic.<br />
Once the maximum number of ICMP packets per second is reached, an attempted<br />
ICMP Flood is detected. The firewall blocks the suspected attacker for the time limit<br />
specified in the FIREWALL SET IDS DOSATTACKBLOCK command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
max<br />
The number of ICMP packets per second<br />
which is deemed to be the threshold for a<br />
ICMP flood attack.<br />
N/A<br />
Example --> firewall set IDS MaxICMP 200<br />
FIREWALL SET IDS MAXPING<br />
Syntax FIREWALL SET IDS MAXPING <br />
Description This command sets the maximum number of pings per second that are allowed by<br />
firewall before an Echo Storm is detected. Echo Storm is a DOS (Denial of Service)<br />
attack. An attacker sends oversized ICMP datagrams to the system using the `pingʹ<br />
command. This can cause the system to crash, freeze or reboot, resulting in denial of<br />
service to legitimate users.<br />
Once the maximum number of pings per second is reached, an attempted DOS<br />
attack is detected. The firewall blocks the suspected attacker for the time limit<br />
specified in the FIREWALL SET IDS DOSATTACKBLOCK command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
max<br />
The maximum number (per second) of<br />
pings that are allowed before an Echo Storm<br />
attempt is detected.<br />
15<br />
Example --> firewall set IDS MaxPING 25<br />
FIREWALL SET IDS MAXTCPOPENHANDSHAKE<br />
Syntax FIREWALL SET IDS MAXTCPOPENHANDSHAKE <br />
Description This command sets the maximum number of unfinished TCP handshaking sessions<br />
per second that are allowed by firewall before a SYN Flood is detected. SYN Flood<br />
is a DOS (Denial of Service) attack. When establishing normal TCP connections,<br />
three packets are exchanged:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 173<br />
• A SYN (synchronize) packet is sent from the host to the network server<br />
• A SYN/ACK packet is sent from the network server to the host<br />
• An ACK (acknowledge) packet is sent from the host to the network server<br />
If the host sends unreachable source addresses in the SYN packet, the server sends<br />
the SYN/ACK packets to the unreachable addresses and keeps resending them. This<br />
creates a backlog queue of unacknowledged SYN/ACK packets. Once the queue is<br />
full, the system will ignore all incoming SYN requests and no legitimate TCP<br />
connections can be established.<br />
Once the maximum number of unfinished TCP handshaking sessions is reached, an<br />
attempted DOS attack is detected. The firewall blocks the suspected attacker for the<br />
time limit specified in the FIREWALL SET IDS DOSATTACKBLOCK command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
max<br />
The maximum number (per second) of<br />
unfinished TCP handshaking sessions that<br />
are allowed before a SYN Flood attempt is<br />
detected.<br />
100<br />
Example --> firewall set IDS MaxTCPopenhandshake 150<br />
FIREWALL SET IDS SCANATTACKBLOCK<br />
Syntax FIREWALL SET IDS SCANATTACKBLOCK <br />
Description This command allows you to set, in the Intrusion Detection System (IDS), the<br />
duration of the blaock that is put in place when a scan attack is detected. The<br />
firewall detects when the system is being scanned by a suspicious host attempting<br />
to identify any open ports. If scan activity is detected, all hosts that are seen to be<br />
making attacks are blocked by the firewall for a set time limit. This command allows<br />
you to specify the duration of the block.<br />
<br />
This CLI command is case-sensitive. You must type the command attributes<br />
exactly as they appear in the command description on this page. If you do not<br />
use the same case-sensitive syntax, the command fails and the CLI displays a<br />
syntax error message.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
duration<br />
The length of time (in seconds) that the<br />
firewall blocks all suspicious hosts for, after<br />
it has detected scan activity on the Firewall.<br />
86400<br />
(one day)
174 Chapter 8 – Security & Firewall<br />
Example --> firewall set IDS SCANattackblock 43200<br />
FIREWALL SET IDS BLACKLIST<br />
Syntax FIREWALL SET IDS BLACKLIST {ENABLE | DISABLE | CLEAR}<br />
Description This command sets the blacklist IDS (Intrusion Detection Setting). Blacklisting<br />
denies an external host access to the system if IDS has detected certain types of<br />
intrusion from that host. Access to the network is denied for ten minutes.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
CLEAR<br />
Enables blacklisting of an external host if<br />
IDS has detected an intrusion from that<br />
host.<br />
Disables blacklisting of an external host if<br />
IDS has detected an intrusion from that<br />
host.<br />
Clears blacklisting of an external host.<br />
disable<br />
Example --> firewall set IDS blacklist enable<br />
FIREWALL SET IDS VICTIMPROTECTION<br />
Syntax FIREWALL SET IDS VICTIMPROTECTION {ENABLE | DISABLE}<br />
Description This command enables/disables the victim protection Intrusion Detection Setting<br />
(IDS). Enabling this command protects the victim from an attempted spoofing<br />
attack.<br />
Web spoofing allows an attacker to create a `shadowʹ copy of the World Wide Web.<br />
All access to the shadow Web goes through the attackerʹs machine, so the attacker<br />
can monitor all of the victimʹs activities and send false data to or from the victimʹs<br />
machine.<br />
If victim protection is enabled, packets destined for the victim host of a spoofing<br />
style attack are blocked. The command allows you to specify the duration of the<br />
block.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables victim protection and blocks<br />
packets destined for the victim host.<br />
Disables victim protection.<br />
disable
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 175<br />
duration<br />
The length of time (in seconds) that the<br />
firewall blocks packets destined for the<br />
victim of a spoofing style attack.<br />
600<br />
(10 minutes)<br />
Example --> firewall set IDS victimprotection enable 800<br />
FIREWALL SET SECURITYLEVEL<br />
Syntax FIREWALL SET SECURITYLEVEL {NONE | HIGH | MEDIUM | LOW |<br />
USERDEFINED }<br />
Description This command allows you to set which security level is used by the Firewall. There<br />
are three default security levels (high, medium and low) that contain different<br />
security configuration information for each interface connection. Once you have<br />
selected a security level, all IP traffic except the default policies specified will be<br />
blocked by the Firewall.<br />
The security level none blocks all IP traffic for every security interface. The<br />
userdefined option allows you to select a security configuration that you have<br />
previously created. There are three types of interface connections:<br />
• Between the external interface and internal interface<br />
• Between the external interface and the de-militarized zone (DMZ)<br />
• Between the DMZ and the internal interface<br />
Selecting a security level deletes the previous security level, and any policies or<br />
portfilters set, and replaces them with the newly selected level.<br />
You can add your own security policies using the FIREWALL ADD POLICY<br />
command.<br />
Options The following tables describes the default policies enabled in the firewall for each of<br />
the high, medium and low security levels. The tables tell you whether a certain<br />
service can be accepted in or allowed out by a specific policy:<br />
HIGH<br />
SECURITY LEVEL<br />
External < ><br />
Internal<br />
External < ><br />
DMZ<br />
DMZ < ><br />
Internal<br />
Service Port In Out In Out In Out<br />
http 80 x ✓ ✓ ✓ ✓ ✓<br />
dns 53 x ✓ x ✓ x ✓<br />
telnet 23 x x x x x x<br />
smtp 25 x ✓ ✓ ✓ ✓ ✓<br />
pop3 110 x ✓ ✓ ✓ ✓ ✓<br />
nntp 119 x x x x x x<br />
real audio/video 7070 x x x x x x<br />
icmp N/A x ✓ x ✓ x ✓<br />
H.323 1720 x x x x x x<br />
T.120<br />
1503 x x x x x x<br />
SSH 22 x x x x x x
176 Chapter 8 – Security & Firewall<br />
MEDIUM<br />
SECURITY LEVEL<br />
External < ><br />
Internal<br />
External < ><br />
DMZ<br />
DMZ < ><br />
Internal<br />
Service Port In Out In Out In Out<br />
http 80 x ✓ ✓ ✓ ✓ ✓<br />
dns 53 x ✓ ✓ ✓ ✓ ✓<br />
telnet 23 x ✓ x ✓ x ✓<br />
smtp 25 x ✓ ✓ ✓ ✓ ✓<br />
pop3 110 x ✓ ✓ ✓ ✓ ✓<br />
nntp 119 x ✓ ✓ ✓ ✓ ✓<br />
real audio/video 7070 ✓ x x ✓ x ✓<br />
icmp N/A x ✓ x ✓ x ✓<br />
H.323 1720 x ✓ x ✓ x ✓<br />
T.120 1503 x ✓ x ✓ x ✓<br />
SSH 22 x ✓ x ✓ x ✓<br />
LOW<br />
SECURITY LEVEL<br />
External < ><br />
Internal<br />
External < ><br />
DMZ<br />
DMZ < ><br />
Internal<br />
Service Port In Out In Out In Out<br />
http 80 x ✓ ✓ ✓ ✓ ✓<br />
dns 53 ✓ ✓ ✓ ✓ ✓ ✓<br />
telnet 23 x ✓ ✓ ✓ ✓ ✓<br />
smtp 25 x ✓ ✓ ✓ ✓ ✓<br />
pop3 110 x ✓ ✓ ✓ ✓ ✓<br />
nntp 119 x ✓ ✓ ✓ ✓ ✓<br />
real audio/video 7070 ✓ x ✓ ✓ ✓ ✓<br />
icmp N/A ✓ ✓ ✓ ✓ ✓ ✓<br />
H.323 1720 ✓ ✓ ✓ ✓ ✓ ✓<br />
T.120 1503 ✓ ✓ ✓ ✓ ✓ ✓<br />
SSH 22 ✓ ✓ ✓ ✓ ✓ ✓<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable):<br />
Option Description Default Value<br />
NONE<br />
HIGH<br />
MEDIUM<br />
LOW<br />
USERDEFINED<br />
Your system blocks all IP traffic between<br />
interfaces.<br />
Your system uses the high firewall security<br />
level, providing a high level of firewall<br />
security between interfaces.<br />
Your system uses the medium firewall<br />
security level, providing a medium level of<br />
firewall security between interfaces.<br />
Your system uses the low firewall security<br />
level, providing a low level of firewall<br />
security between interfaces.<br />
Your system uses a security configuration<br />
that you have previously created.<br />
none
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 177<br />
slevel<br />
The name of the security configuration level<br />
that you have previously created.<br />
N/A<br />
Example --> firewall set securitylevel medium<br />
See also FIREWALL ADD POLICY<br />
For more information on ports assigned to protocols, see<br />
http://www.ietf.org/rfc/rfc1700.txt<br />
FIREWALL SHOW IDS<br />
Syntax FIREWALL SHOW IDS<br />
Description This command displays the following information about the Firewall IDS settings:<br />
• IDS enabled status (true or false)<br />
• Blacklist status (true or false)<br />
• Use Victim Protection status (true or false)<br />
• DOS attack block duration (in seconds)<br />
• Scan attack block duration (in seconds)<br />
• Victim protection block duration (in seconds)<br />
• Maximum TCP open handshaking count allowed (per second)<br />
• Maximum ping count allowed (per second)<br />
• Maximum ICMP count allowed (per second)<br />
Example --> firewall show IDS<br />
Firewall IDS:<br />
IDS Enabled: true<br />
Use Blacklist: true<br />
Use Victim Protection: true<br />
Dos Attack Block Duration: 1800<br />
Scan Attack Block Duration: 10<br />
Victim Protection Block Duration: 600<br />
Max TCP Open Handshaking Count: 100<br />
Max PING Count: 20<br />
Max ICMP Count: 100<br />
FIREWALL SHOW POLICY<br />
Syntax FIREWALL SHOW POLICY <br />
Description This command displays information about a single policy that was added to the<br />
firewall using the FIREWALL ADD POLICY command.<br />
A policy exists between two interface types that were set using the FIREWALL ADD<br />
POLICY command. This command displays what these interface types are, and the<br />
allow only validator status; true means that allowonly-val was set when the policy
178 Chapter 8 – Security & Firewall<br />
was created; false means that either blockonly-val was set, or no validator status was<br />
set (blockonly-val is the default setting if no status is specified).<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall show policy p2<br />
Firewall Policy: ext-dmz<br />
Interface Type 1: external<br />
Interface Type 2: dmz<br />
See also FIREWALL LIST POLICIES<br />
FIREWALL SHOW PORTFILTER<br />
Syntax FIREWALL SHOW PORTFILTER <br />
Description This command displays information about a single portfilter that was added to a<br />
firewall policy using the FIREWALL POLICY ADD PORTFILTER command. The<br />
following portfilter information is displayed:<br />
• Portfilter name<br />
• Transport type used by the protocol (e.g., 6 for SMTP)<br />
• Start of the port range<br />
• End of the port range<br />
• Inbound permission (true or false)<br />
• Outbound permission (true or false)<br />
• Raw IP - whether the portfilter uses a non-TCP/UDP protocol (true or false)<br />
• TCP permission - whether the portfilter uses a TCP protocol (true or false)<br />
• UDP permission - whether the portfilter uses a UDP protocol (true or false)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing portfilter.<br />
To display portfilter names, use the<br />
FIREWALL LIST PORTFILTERS command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 179<br />
policyname<br />
A name that identifies an existing firewall<br />
policy. To display policy names, use the<br />
FIREWALL LIST POLICIES command.<br />
N/A<br />
Example --> firewall show portfilter pf3 ext-int<br />
Firewall Port Filter: pf3<br />
Transport type: 6<br />
Port number start: 25<br />
Port number end: 25<br />
Inbound permission: true<br />
Outbound permission: true<br />
Raw IP: false<br />
TCP permission: true<br />
UDP permission: false<br />
See also FIREWALL LIST POLICIES<br />
FIREWALL LIST PORTFILTERS<br />
FIREWALL SHOW VALIDATOR<br />
Syntax FIREWALL SHOW VALIDATOR <br />
Description This command displays information about a single validator that was added to<br />
firewall policy using the FIREWALL ADD VALIDATOR command. The following<br />
validator information is displayed:<br />
• Validator name<br />
• Direction (inbound, outbound or both)<br />
• Base IP address of the range to which the validator applies<br />
• Netmask defining the range of addresses to which the validator applies<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
policyname<br />
A name that identifies an existing validator. To<br />
display validator names, use the FIREWALL<br />
LIST VALIDATORS command.<br />
A name that identifies an existing firewall policy.<br />
To display policy names, use the FIREWALL<br />
LIST POLICIES command.<br />
N/A<br />
N/A<br />
Example --> firewall show validator v1<br />
Firewall Host Validator: v1<br />
Direction: both<br />
Host IP: 192.168.103.2<br />
Host Mask: 255.255.255.0
180 Chapter 8 – Security & Firewall<br />
See also FIREWALL ADD VALIDATOR<br />
FIREWALL LIST VALIDATORS<br />
FIREWALL STATUS<br />
Syntax FIREWALL STATUS<br />
Description This command displays the following information about the Firewall:<br />
• Firewall status (enabled or disabled)<br />
• Security level setting (none, high, low or medium)<br />
• Firewall logging status:<br />
• session logging (enabled or disabled)<br />
• blocking logging (enabled or disabled)<br />
• intrusion logging (enabled or disabled)<br />
Example --> firewall status<br />
Firewall enabled.<br />
Firewall security level: medium.<br />
Firewall session logging enabled.<br />
Firewall blocking logging enabled.<br />
Firewall intrusion logging disabled.<br />
See also FIREWALL ENABLE|DISABLE<br />
FIREWALL SET SECURITYLEVEL<br />
FIREWALL ENABLE|DISABLEBLOCKINGLOG<br />
FIREWALL ENABLE|DISABLE SESSIONLOG
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 181<br />
Chapter 9<br />
Network Address Translation - NAT<br />
Network Address Translation<br />
NAT stands for Network Address Translation. In short, it is a mechanism by which<br />
the IP addresses of packets are changed as they go through a routing device. The<br />
reason for doing such a translation is to enable a device to appear to have one<br />
address to hosts on one side of the NATing router, and another address to hosts on<br />
the other side of the NATing router.<br />
At first glance, it might seem a very strange thing to want to change the addresses<br />
inside IP packets. However, there are some useful applications for this, briefly<br />
explained in the following.<br />
Address conservation<br />
The most common application of NAT is to make better use of the increasingly scant<br />
resource that is the public IP address. As the number of people connecting to the<br />
Internet has exploded, it has reached the stage where there are just not enough IP<br />
addresses available to give an individual address to every Internet-connected<br />
device. So, a prime purpose of NAT is to enable a whole network to access the<br />
Internet using just a single public IP address (see figure 10).
182 Chapter 9 – Network Address Translation - NAT<br />
10.0.0.3<br />
10.0.0.2<br />
24.2.249.4<br />
Internet<br />
AT-RG6xx<br />
10.0.0.1<br />
(Router with NAT)<br />
10.0.0.4<br />
Figure 10. Address Conservation using NAT<br />
Security<br />
The security provided by NAT is really a by-product of the address conservation<br />
purpose. The fact is that NAT aims to translate the source addresses of packets<br />
originating from within the local private network; when reply packets come back<br />
from the Internet, they can be passed back to the hosts on the Private network as the<br />
NAT process keeps an internal table that enables it to know which replies are<br />
actually destined to which private hosts.<br />
So, if a packet comes from the Internet that is not a reply to a packet sent from the<br />
inside, then that NAT process does not know who to forward it to, and has to drop<br />
it.<br />
So, this makes it very difficult for devices on the Internet to initiate incoming<br />
sessions to hosts on the private network; when the packet that is trying to initiate<br />
the session arrives at the NAT device, it gets dropped.<br />
In addition, because the NAT process has to process all the packets passing through<br />
it, in order to pass them to the right internal host, it is quite easy to build in an<br />
ability to look for attacks – SYN floods, Pings of Death, IP Spoofing etc are quite<br />
easy to recognize as packets are being examined on the way through the NAT<br />
device.<br />
How does NAT work?<br />
The trick to NAT is to make use of the Port fields in TCP and UDP.<br />
In TCP and UDP packets, there are 4 fields that identify a particular session:<br />
The particular value of the source port number in a session is not important, so the<br />
NAT device is free to change the source port numbers in packets. This freedom to<br />
change the source port number is the central key to NAT. This enables it to make
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 183<br />
sure that every TCP or UDP session that it sends out to the Internet has a UNIQUE<br />
source port number.<br />
Consider the problem that would occur if the NAT device was not free to change the<br />
source port number; only the source address:<br />
If two hosts on the private LAN happened to create sessions using the same source<br />
port number, and same destination address and same destination port number, then<br />
the only thing that would be different between the packets in one session and those<br />
in the other session would be the source IP addresses. However, once the NAT<br />
device had changed the source IP addresses to the global IP address, there would be<br />
nothing to differentiate the packets. The host at the other end of the connection<br />
would think that all the packets were from the same session, which would cause<br />
chaos.<br />
So, it is very important that the NAT device is also able to change the source port<br />
number, so that the problem described above will never happen.<br />
Therefore the NAT device can intercept TCP and UDP sessions coming from Private<br />
hosts, change the source addresses AND source port numbers in the packets, and<br />
store away the original IP address and port number in a table, along with the newly<br />
substituted port number (so that the original values can be restored in the reply<br />
packet when it comes).<br />
So, the process that occurs is:<br />
• the NAT device receives the packet<br />
• changes the source IP address in the packets to the global IP address<br />
• looks up in its table for an entry containing the source port number and original<br />
source address of the packet<br />
• if it finds an entry, it takes the substitution port number in the table entry,<br />
and changes the source port number of the packet to this substitution<br />
number<br />
• if it does not find an entry, it generates a new substitution port number, and<br />
creates a new table entry containing the original source IP address of the<br />
packet, its original source port number, and the newly generated<br />
substitution port number. Changes the source port number of the packet to<br />
this substitution number.<br />
• Sends the packet on out the public interface.<br />
• the packet goes off to the destination host, which sends a reply, in which source<br />
and destination IP address are swapped, and source and destination port number<br />
are swapped<br />
• the reply packet arrives back at the NAT device, which receives it<br />
• the destination port number is looked for in the table<br />
• if it is found, the packet is recognized as being a reply for an existing<br />
session, and the source IP and source Port number in the table entry are put<br />
into the destination IP address and destination port number fields of the<br />
packet, and the packet is then sent onto the private LAN.<br />
• If it is not found, then it is not clear where the packet should be sent, and so<br />
it is dropped.
184 Chapter 9 – Network Address Translation - NAT<br />
What about protocols other than UDP and TCP?<br />
The description above involves a lot of use of port numbers. Unfortunately, the<br />
port-number fields are only present in TCP and UDP packets. For other IP protocols,<br />
like ICMP, OSPF, GRE, IPSEC, etc other methods have to be used.<br />
In the case of ICMP, things are a little more complicated. For Ping packets, there is<br />
an identifier field in the packet, that uniquely identifies each ping – NAT can make<br />
use of this field in a similar way to the UDP/TCP port number. For other ICMP<br />
information messages (port unreachable, host unreachable, etc) there are often IP<br />
addresses of the hosts inside the data section of the packet - there is extra work<br />
required for the NAT device to look inside the ICMP packet, and translate these<br />
addresses as necessary.<br />
For most other IP protocols, though, there usually is not a field in the packet that can<br />
uniquely identify a communication session (and therefore, which host on the LAN<br />
to send the replies to). So, usually, a static mapping (probably user configured) has<br />
to be used – e.g. a mapping like ‘all GRE packets arriving at the public interface,<br />
with a particular destination address, will be sent to a particular address on the<br />
private LAN’.<br />
So, there typically just is not the flexibility with the other protocols that there is with<br />
TCP and UDP.<br />
How can you let sessions into servers on the private<br />
LAN?<br />
Up until now, we have been looking at the situation where a host on the private<br />
LAN initiates a session to some external host. So, the NAT device intercepts the<br />
packets on the way out, and is associating source port numbers with internal IP<br />
addresses.<br />
However, what about the case where an external host wants to connect a host on the<br />
Private LAN? This session will, of course, be initiated by an incoming packet<br />
arriving at the public interface. It has been stated above that in general, such a<br />
packet will have to be dropped – if it is not a reply to an outgoing packet, there is no<br />
information about which internal host to forward it to.<br />
However, you may wish to actually make it possible for incoming sessions to access<br />
certain hosts on the private LAN. This has to be done by configuring specific static<br />
port mappings. For example, a mapping can be configured such that any TCP<br />
session coming into port 80 on the public interface is forwarded to a particular host<br />
on the private LAN; and any TCP session coming into port 25 on the public interface<br />
is forwarded to another (or maybe the same) host on the private LAN, and so on.<br />
In this way, servers on the private LAN can be made available for connections from<br />
external hosts. Of course, for any given port number, only one mapping is possible –<br />
so it is only possible to make one Web Server, one Mail Server, one FTP server, etc<br />
available.<br />
In the diagram below, we see a case of allowing external access to an FTP server and<br />
a WWW server. This would be achieved by have two static mappings on the NAT<br />
device:<br />
Incoming sessions to TCP port 21 are mapped to internal IP address 192.168.0.3<br />
Incoming sessions to TCP port 80 are mapped to internal IP address 192.168.0.2
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 185<br />
ftp://24.x.x.x (port 21)<br />
FTP Server IP:<br />
192.168.0.3<br />
WAN IP<br />
24.10.2.45<br />
Internet<br />
AT-RG6xx<br />
http://24.x.x.x (port 80)<br />
Web Server IP:<br />
192.168.0.2<br />
Figure 11. External access to an FTP server<br />
NAT support on AT-RG6xx Residential Gateway<br />
series<br />
AT-RG613, AT-RG623 and AT-RG656 NAT module is designed to provide the<br />
following features:<br />
• global IP address pools<br />
• reserved mappings<br />
• application level gateways (ALGs)<br />
NAT services are available between External security interface and Internal Security<br />
interfaces.<br />
In order to access NAT services, the NAT module must be enabled between a a pair<br />
of interfaces by using the NAT ENABLE command and assigning an arbitrary name<br />
to this relationship.<br />
<br />
<br />
Before enabling NAT, the Security module must be already enabled using<br />
SECURITY ENABLE command.<br />
See Security section for details regarding security interfaces.<br />
Global IP Address Pools<br />
A Global Address Pool is a pool of addresses seen from the external network. By<br />
default, each external interface creates a Global Address Pool with a single address –<br />
the address assigned to that interface.<br />
For outbound sessions, an address is picked from a pool by hashing the source IP<br />
address for a pool index and then hashing again for an address index. For inbound
186 Chapter 9 – Network Address Translation - NAT<br />
sessions to make use of the global pool, it is necessary to create a reserved mapping.<br />
See below for more information on reserved mappings.<br />
Reserved Mappings<br />
Reserved mapping is used to support NAT traversal.<br />
NAT traversal is a mechanism that makes a service (listening port) on an internal<br />
computer accessible to external computers. NAT traversal operates by having the<br />
NAT listen for incoming messages on a selected port on its external interface. When<br />
the NAT receives a message, it uses its internal interface to forward the packet to the<br />
same port number on a selected internal computer (And any responses from the<br />
internal computer are forwarded to the requesting external computer).<br />
Reserved mappings can also be used so that different internal hosts can share a<br />
global address by mapping different ports to different hosts.<br />
For example, Host A is an FTP server and Host B is a web server.<br />
By choosing a particular IP address in the global address pool, and mapping the<br />
FTP port on this address to the FTP port on Host A and the HTTP port on the global<br />
address to the HTTP port on Host B, both internal hosts can share the same global<br />
address.<br />
To add a reserved mapping rule to an existing NAT relation, use NAT ADD<br />
RESVMAP INTERFACE command.<br />
With this command it is possible set a mapping rule based on port number or<br />
protocol number.<br />
Setting the protocol number to 255(0xFF) means that the mapping will apply to all<br />
protocols. Setting the port number to 65535(0xFFFF) for TCP or UDP protocols<br />
means that the mapping will apply to all port numbers for that protocol.<br />
Application Level Gateways (ALGs)<br />
Some applications embed address and/or port information in the payload of the<br />
packet.<br />
The most notorious of these is FTP. For most applications, it is sufficient to create a<br />
trigger with address replacement enabled. However, there are 3 applications for<br />
which a specific ALG is provided: FTP, NetBIOS and DNS.<br />
Interactions of NAT and other security features.<br />
Firewall filters and reserved mappings.<br />
So far, the NAT reserved mappings have been considered independently of the<br />
firewall.<br />
If the firewall is not enabled, then all that is required to enable NAT to allow in TCP<br />
sessions to a certain port number is to create a reserved mapping for that particular<br />
TCP port number.<br />
However, if the firewall is enabled, there is a matter of precedence to consider if<br />
reserved mapping has been created for a particular TCP port but the firewall is not<br />
configured to allow in TCP data for that port.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 187<br />
In this case the blocking by the firewall will take precedence<br />
So, when the firewall has been enabled, care must be taken to ensure that when<br />
NAT reserved mapping are created, the firewall is also configured to allow in the<br />
traffic for which the reserve mapping is defined.<br />
NAT and Dynamic Port Opening<br />
The description of Dynamic Port Opening (see Security section) discussed that<br />
feature in the context of the firewall – ie the Dynamic Port Opening feature was<br />
presented as being required to allow secondary sessions in through the firewall.<br />
It should be noted that, by default, incoming sessions are not allowed through by<br />
NAT either. So, if NAT is enabled, even if the firewall is not enabled, then if you<br />
wish to be able to access services that involve incoming secondary sessions, then<br />
you will need to create Dynamic Port Opening definitions for those services.<br />
So, for example, if you have NAT enabled on the router, and wish for users on the<br />
LAN to be able to successfully access external RealServers, it will be necessary to<br />
create a dynamic port opening definition.<br />
NAT and secondary IP addresses<br />
NAT services work also with secondary IP addresses.<br />
In this case itʹs necessary create a secondary IP address using IP INTERFACE ADD<br />
SECONDARYIPADDRESS command and then create a security interface based on<br />
this secondary IP interface.<br />
Then a global pool must be added and a reserved mapping configured. If using<br />
PPPoE encapsulation, secondary IP addresses in the global pool must be on a<br />
separate subnet. If the secondary IP addresses are on the same subnet as the external<br />
IP address, the addresses are not visible to the external network.
188 Chapter 9 – Network Address Translation - NAT<br />
NAT Command <strong>Reference</strong><br />
This section describes the commands available on AT-RG613, AT-RG623 and AT-<br />
RG656 residential Gateway to enable, configure and manage NAT module.<br />
NAT CLI commands<br />
The table below lists the nat commands provided by the CLI:<br />
Command<br />
NAT ADD GLOBALPOOL<br />
NAT ADD RESVMAP GLOBALIP<br />
NAT ADD RESVMAP INTERFACENAME<br />
NAT CLEAR GLOBALPOOLS<br />
NAT CLEAR RESVMAPS<br />
NAT DELETE GLOBALPOOL<br />
NAT DELETE RESVMAP<br />
NAT DISABLE<br />
NAT ENABLE<br />
NAT IKETRANSLATION<br />
NAT LIST GLOBALPOOLS<br />
NAT LIST RESVMAPS<br />
NAT SHOW GLOBALPOOL<br />
NAT SHOW RESVMAP<br />
NAT STATUS<br />
NAT ADD GLOBALPOOL<br />
Syntax NAT ADD GLOBALPOOL {INTERNAL|DMZ} <br />
{SUBNETMASK |ENDADDRESS }<br />
Description The nat enable command creates an IP address for the external security interface.<br />
However, you may want to use more than one external IP address. For example, if<br />
your ISP provides multiple IP addresses, you might want to map one external<br />
address to your internal web server, and map another external address to your<br />
internal mail server.<br />
This command creates a pool of external network addresses. A network address<br />
pool is a range of IP addresses that is visible outside your network. NAT translates<br />
packets between the external addresses and the internal addresses that each address<br />
is mapped to.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 189<br />
There are two ways to specify a range of IP addresses:<br />
• specify the interfacename IP address and a subnet mask<br />
• specify the interfacename IP address that represents the first address in the range,<br />
then specify the last address in the range<br />
If you want to map IP addresses to individual hosts on an internal interface, you can<br />
use the command NAT ADD RESVMAP.<br />
<br />
Before adding a global address pool, the NAT module must be enabled using<br />
the command NAT ENABLE.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
INTERNAL<br />
DMZ<br />
ipaddress<br />
mask<br />
endaddress<br />
An arbitrary name that identifies a global<br />
network address or pool of addresses. It can<br />
be made up of one or more letters or a<br />
combination of letters and digits, but it<br />
cannot start with a digit.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an internal interface (DMZ or internal)<br />
using the NAT ENABLE command. To<br />
display security interfaces, use the<br />
SECURITY LIST INTERFACES command.<br />
Maps the global IP addresses to hosts on the<br />
network attached to the internal interface.<br />
Maps the global addresses to hosts on the<br />
network attached to the DMZ interface.<br />
The IP address of the interfacename that is<br />
visible outside the network.<br />
The subnet mask that defines the range of<br />
addresses in the pool.<br />
The last IP address in the range of addresses<br />
that make up the global address pool.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example 1 This example creates a network address pool that allows NAT to translate packets<br />
between the external interface and the DMZ interface type.<br />
First, NAT is enabled between the external interface and the DMZ interface type:<br />
--> nat enable n1 extinterface dmz<br />
Then the global address pool is created, by defining IP address and netmask:
190 Chapter 9 – Network Address Translation - NAT<br />
--> nat add globalpool gp1 extinterface dmz 192.168.102.3<br />
subnetmask 255.255.255.0<br />
Example 2 This example creates a network address pool that allows NAT to translate packets<br />
between the external interface and the internal interface type.<br />
First NAT is enabled between the external interface and the internal interface type:<br />
--> nat enable n2 extinterface internal<br />
Then the global pool is created, by defining the start and end addresses of the pool:<br />
--> nat add globalpool gp2 extinterface internal 192.168.103.2<br />
endaddress 192.168.103.50<br />
See also NAT ENABLE<br />
NAT STATUS<br />
SECURITY LIST INTERFACES<br />
Once you have created an address pool, packets received on a specific IP address<br />
can be mapped to individual hosts inside the network. See NAT ADD RESVMAP.<br />
NAT ADD RESVMAP GLOBALIP<br />
Syntax NAT ADD RESVMAP GLOBALIP {TCP<br />
|UDP | ICMP | IGMP | IP| EGP| RSVP| OSPF| IPIP| ALL }<br />
Description This command maps an IP address from a global pool (created using the NAT ADD<br />
GLOBALPOOL command) to an individual IP address inside the network. NAT<br />
translates packets between the external IP address and the individual host based on<br />
the transport information given in this command.<br />
<br />
Note: Before you can add a reserved mapping, you must create a NAT<br />
relationship using the command NAT ENABLE.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
An arbitrary name that identifies a reserved<br />
mapping configuration. It can be made up<br />
of one or more letters or a combination of<br />
letters and digits, but it cannot start with a<br />
digit.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 191<br />
globalip<br />
internalip<br />
(TCP) portno<br />
(UDP) portno<br />
ICMP<br />
IGMP<br />
IP<br />
EGP<br />
RSVP<br />
OSPF<br />
IPIP<br />
ALL<br />
An external IP address that is a member of a<br />
global address pool created using the ADD<br />
GLOBALPOOL command.<br />
The IP address of an individual host inside<br />
the network (attached to the internal or<br />
DMZ interface).<br />
The TCP port number that you want to use<br />
in your reserved mapping configuration.<br />
The UDP port number that you want to use<br />
in your reserved mapping configuration.<br />
Internet Control Message Protocol (ICMP)<br />
packets are to be translated. ICMP messages<br />
are used for out-of-band messages related<br />
to network operation or mis-operation. See<br />
http://www.ietf.org/rfc/rfc0792.txt.<br />
Internet Group Management Protocol<br />
(IGMP) is set as the transport type. Allows<br />
Internet hosts to participate in multicasting.<br />
See http://www.ietf.org/rfc/rfc1112.txt.<br />
Internetwork Protocol (IP). Provides all of<br />
the Internetʹs data transport services.<br />
http://www.ietf.org/rfc/rfc791.txt and<br />
http://www.ietf.org/rfc/rfc919.txt.<br />
Exterior Gateway Protocol (EGP) packets<br />
are to be translated. This is a protocol for<br />
exchanging routing information between<br />
autonomous systems. See<br />
http://www.ietf.org/rfc/rfc904.txt.<br />
Resource Reservation Protocol (RSVP<br />
packets are to be translated. Supports the<br />
reservation of resources across an IP<br />
network. See<br />
http://www.ietf.org/rfc/rfc2205.txt.<br />
Open Shortest Path First (OSPF) packets are<br />
to be translated. A link-state routing<br />
protocol. See http://www.ietf.org/rfc/rfc1583.<br />
IP-within-IP Encapsulation packets are to be<br />
translated. This protocol encapsulates an IP<br />
datagram within a datagram. See<br />
http://www.ietf.org/rfc/rfc2896.txt.<br />
All traffic is translated between the global<br />
IP address and the specified inside address<br />
that it is mapped to.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> nat add resvmap rm1 globalip extinterface 192.168.68.68<br />
10.10.10.10 tcp 25
192 Chapter 9 – Network Address Translation - NAT<br />
See also NAT ENABLE<br />
NAT LIST GLOBALPOOLS<br />
NAT STATUS<br />
SECURITY LIST INTERFACES<br />
NAT ADD RESVMAP INTERFACE NAME<br />
Syntax NAT ADD RESVMAP INTERFACENAME {TCP<br />
|UDP |ICMP|IGMP|IP|EGP|RSVP|OSPF|IPIP|ALL}<br />
Description This command maps an external IP security interface (included in a NAT<br />
relationship created using the NAT ENABLE command) to an individual IP address<br />
inside the network. NAT translates packets between the external IP address and the<br />
individual host based on the transport information given in this command.<br />
<br />
Note: Before you can add a reserved mapping, you create a NAT relationship<br />
using the command NAT ENABLE.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
internalip<br />
(TCP) portno<br />
(UDP) portno<br />
ICMP<br />
An arbitrary name that identifies a reserved<br />
mapping configuration. It can be made up<br />
of one or more letters or a combination of<br />
letters and digits, but it cannot start with a<br />
digit.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
The IP address of an individual host inside<br />
the network (connected to the internal or<br />
DMZ interfaces).<br />
The TCP port number that you want to use<br />
in your reserved mapping configuration.<br />
The UDP port number that you want to use<br />
in your reserved mapping configuration.<br />
Internet Control Message Protocol (ICMP)<br />
packets are to be translated. ICMP messages<br />
are used for out-of-band messages related<br />
to network operation or mis-operation. See<br />
http://www.ietf.org/rfc/rfc0792.txt.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 193<br />
IGMP<br />
IP<br />
EGP<br />
RSVP<br />
OSPF<br />
IPIP<br />
ALL<br />
Internet Group Management Protocol<br />
(IGMP) packets are to be translated. Allows<br />
Internet hosts to participate in multicasting.<br />
See http://www.ietf.org/rfc/rfc1112.txt.<br />
Internetwork Protocol (IP). Provides all of<br />
the Internetʹs data transport services.<br />
http://www.ietf.org/rfc/rfc791.txt and<br />
http://www.ietf.org/rfc/rfc919.txt.<br />
Exterior Gateway Protocol (EGP) packets<br />
are to be translated. Protocol for exchanging<br />
routing information between autonomous<br />
systems. See http://www.ietf.org/rfc/rfc904.txt.<br />
Resource Reservation Protocol (RSVP<br />
packets are to be translated. Supports the<br />
reservation of resources across an IP<br />
network. See<br />
http://www.ietf.org/rfc/rfc2205.txt.<br />
Open Shortest Path First (OSPF packets are<br />
to be translated. A link-state routing<br />
protocol. See http://www.ietf.org/rfc/rfc1583.<br />
IP-within-IP Encapsulation packets are to be<br />
translated. This protocol encapsulates an IP<br />
datagram within a datagram. See<br />
http://www.ietf.org/rfc/rfc2896.txt.<br />
All traffic is translated between the global<br />
IP address and the specified inside address<br />
that it is mapped to.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> nat add resvmap rm1 interfacename extinterface 10.10.10.10<br />
tcp 25<br />
See also NAT ENABLE<br />
SECURITY LIST INTERFACES<br />
NAT CLEAR GLOBALPOOLS<br />
Syntax NAT CLEAR GLOBALPOOLS <br />
Description This command deletes all address pools that were added to a specific outside<br />
interface using the NAT ADD GLOBALPOOL command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
interfacename<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
N/A
194 Chapter 9 – Network Address Translation - NAT<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
Example --> nat clear globalpools extinterface<br />
See also NAT ADD GLOBALPOOL<br />
SECURITY LIST INTERFACES<br />
NAT CLEAR RESVMAPS<br />
Syntax NAT CLEAR RESVMAPS <br />
Description This command deletes all NAT reserved mappings that were added to an outside<br />
security interface using the NAT ADD RESVMAP command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
interfacename<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
Example --> nat clear resvmaps extinterface<br />
See also NAT DELETE RESVMAP<br />
SECURITY LIST INTERFACES<br />
NAT DELETE GLOBALPOOL<br />
Syntax NAT DELETE GLOBALPOOL <br />
Description This command deletes a single address pool that was added to a specific external<br />
interface using the NAT ADD GLOBALPOOL command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing global IP<br />
address. To display global IP addresses, use<br />
the NAT LIST GLOBALPOOLS command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 195<br />
interfacename<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
Example --> nat delete globalpool gp1 extinterface<br />
See also NAT ADD GLOBALPOOL<br />
NAT LIST GLOBALPOOLS<br />
SECURITY LIST INTERFACES<br />
NAT DELETE RESVMAP<br />
Syntax NAT DELETE RESVMAP <br />
Description This command deletes a single NAT reserved mapping that was added to an<br />
external security interface using the NAT ADD RESVMAP command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
A name that identifies an existing global IP<br />
address. To display global IP addresses, use<br />
the NAT LIST RESVMAPS command.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
N/A<br />
Example --> nat delete resvmap rm1 extinterface<br />
See also NAT ENABLE<br />
NAT LIST RESVMAPS<br />
SECURITY LIST INTERFACES<br />
NAT DISABLE<br />
Syntax NAT DISABLE <br />
Description This command disables a NAT relationship that was previously enabled between a<br />
a security interface and another generic interface type, using the NAT ENABLE<br />
command. NAT is disabled between the security interface and all the interfaces that<br />
belong to the chosen interface type.
196 Chapter 9 – Network Address Translation - NAT<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
The name of an existing NAT relationship<br />
created between a security interface and an<br />
interface type using the NAT ENABLE<br />
command. To display enabled NAT objects,<br />
use the NAT STATUS command.<br />
N/A<br />
Example --> nat disable nat1<br />
See also NAT ENABLE<br />
NAT STATUS<br />
NAT ENABLE<br />
Syntax NAT ENABLE {INTERNAL|DMZ}<br />
Description This command enables NAT between an existing security interface and a network<br />
interface type. NAT is enabled between the security interface and all the interfaces<br />
that belong to the chosen network interface type.<br />
<br />
Note - You must enable the Security package using the command SECURITY<br />
ENABLE if you want to use the NAT module.<br />
An interface is either an inside or outside interface. The network attached to an inside<br />
interface needs to be protected from the network attached to an outside interface.<br />
For example, the network attached to an internal interface (inside) needs to be<br />
protected from the network attached to a DMZ (outside). Also, you can only enable<br />
NAT between two different interface types. For example, if interfacename is an<br />
external interface type, you can enable NAT between the interfacename and the<br />
internal or the DMZ interface type, but not the external interface type. The following<br />
interface combinations are the only ones that you can use:<br />
• external (outside) and internal (inside)<br />
• external (outside) and DMZ (inside)<br />
• DMZ (outside) and internal (inside)<br />
The existing security interface must be an outside interface. NAT translates packets<br />
between the outside interface and the inside interface type. In this way, the IP<br />
address of a host on a network attached to an inside interface is hidden from a host<br />
on a network attached to an outside interface.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 197<br />
name<br />
interfacename<br />
INTERNAL<br />
DMZ<br />
An arbitrary name that identifies a NAT<br />
object enabled between a security interface<br />
and an interface type. It can be made up of<br />
one or more letters or a combination of<br />
letters and digits, but it cannot start with a<br />
digit.<br />
The name of an existing security interface<br />
(external or DMZ) that was added to the<br />
Security package using the SECURITY ADD<br />
INTERFACE command. To display security<br />
interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
Allows NAT to be enabled/disabled<br />
between the interface interfacename and all<br />
interfaces of the internal interface type.<br />
Allows NAT to be enabled/disabled<br />
between the interface interfacename and all<br />
interfaces of the DMZ interface type. The<br />
interfacename must be an external interface<br />
type.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> nat enable nat1 extinterface internal<br />
See also NAT DISABLE<br />
NAT STATUS<br />
SECURITY LIST INTERFACES<br />
SECURITY ADD INTERFACE<br />
NAT IKETRANSLATION<br />
Syntax NAT IKETRANSLATION {COOKIES | PORTS}<br />
Description This command supports NAT IPSec traversal. It allows you to specify how Internet<br />
Key Exchange (IKE) packets are translated.<br />
IKE establishes a shared security policy and authenticates keys for services that require keys, such as IPSec.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
COOKIES<br />
PORTS<br />
Source port will not be translated for IKE<br />
packets; IKE cookies are used to identify<br />
IKE sessions.<br />
Source port will be translated for IKE<br />
packets.<br />
ports<br />
ports<br />
Example --> nat iketranslation cookies
198 Chapter 9 – Network Address Translation - NAT<br />
NAT LIST GLOBALPOOLS<br />
Syntax NAT LIST GLOBALPOOLS <br />
Description This command lists the following NAT address pool information for a specific<br />
outside interface:<br />
• Address pool identification number<br />
• Address pool name<br />
• Type of inside interface (internal or DMZ)<br />
• Subnet configuration status (true if the network pool was set using a subnet mask,<br />
false if it was set using a range of IP addresses)<br />
• IP address - the outside network IP address or the first address in the range of<br />
network pool addresses<br />
• Mask/End Address - the outside subnet mask of the outside network IP address<br />
or the last address in the range of network pool addresses<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 199<br />
Option Description Default Value<br />
interfacename<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
Example<br />
--> nat list globalpools extinterface<br />
NAT global address pool:<br />
ID | Name | Type | Subnet | IP address | Mask/End Address<br />
----------------------------------------------------------------------<br />
1 | gp1 | dmz | true | 192.168.102.3 | 255.255.255.0<br />
2 | g2 | internal | false | 192.168.103.2 | 192.168.103.50<br />
----------------------------------------------------------------------<br />
See also SECURITY LIST INTERFACES<br />
NAT SHOW GLOBALPOOL<br />
NAT LIST RESVMAPS<br />
Syntax NAT LIST RESVMAPS <br />
Description This command lists the following reserved mapping information for a specific<br />
outside security interface:<br />
• Reserved mapping identification number<br />
• Reserved mapping name<br />
• Global address - the IP address of the outside security interface that is mapped to<br />
the inside IP address<br />
• Internal address - the IP address inside the network that the global IP address is<br />
mapped to<br />
• Transport type (IGMP, IPIP etc.)<br />
• Port - TCP or UDP port used by the transport type. If a non-TCP/UDP protocol is<br />
used, the port is set to 0.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
200 Chapter 9 – Network Address Translation - NAT<br />
interfacename<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
Example<br />
--> nat list resvmaps extinterface<br />
NAT reserved mappings:<br />
ID | Name | Global Address | Internal Address | Type | Port<br />
-----------------------------------------------------------------------<br />
1 | rm2 | 192.168.103.2 | 10.10.10.10 | tcp | 25<br />
2 | rm1 | 192.168.103.15 | 20.20.20.20 | udp | 21<br />
-----------------------------------------------------------------------<br />
See also SECURITY LIST INTERFACES<br />
NAT SHOW GLOBALPOOL<br />
Syntax NAT SHOW GLOBALPOOL <br />
Description This command displays information about a single network address pool that has<br />
been added to an outside interface:<br />
• Type of inside interface (internal or DMZ)<br />
• Subnet configuration status (true if the network pool was set using a subnet mask,<br />
false if it was set using a range of IP addresses)<br />
• IP address - the outside network IP address or the first address in the range of<br />
addresses<br />
• Subnet Mask or End Address - the subnet mask used to define the global address<br />
range or the last address in the range of addresses<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
A name that identifies an existing global IP<br />
address. To display global IP addresses, use<br />
the NAT LIST GLOBALPOOLS command.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
N/A<br />
Example --> nat show globalpool gpl extinterface<br />
NAT global address pool: gp1
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 201<br />
Interface type: dmz<br />
Subnet configuration: true<br />
IP address: 192.168.102.3<br />
Subnet mask or End Address: 255.255.255.0<br />
See also NAT LIST GLOBALPOOLS<br />
SECURITY LIST INTERFACES<br />
NAT SHOW RESVMAP<br />
Syntax NAT SHOW RESVMAP <br />
Description This command displays the following information about a single reserved mapping<br />
configuration that has been added to an outside security interface:<br />
• Global IP address<br />
• Internal IP address<br />
• Transport type<br />
• Port number<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
interfacename<br />
A name that identifies an existing global<br />
pool. To display global pool names, use the<br />
NAT LIST RESVMAPS command.<br />
The name of an existing security interface<br />
(external or DMZ) created and connected to<br />
an inside interface (DMZ or internal) using<br />
the NAT ENABLE command. To display<br />
security interfaces, use the SECURITY LIST<br />
INTERFACES command.<br />
N/A<br />
N/A<br />
Example --> nat show resvmap rm1 extinterface<br />
NAT reserved mapping: rm1<br />
Global IP address: 192.168.103.15<br />
Internal IP address: 20.20.20.20<br />
Transport type: tcp<br />
Port number: 25<br />
See also NAT LIST RESVMAPS<br />
SECURITY LIST INTERFACES<br />
NAT STATUS<br />
Syntax NAT STATUS
202 Chapter 9 – Network Address Translation - NAT<br />
Description This command lists the outside security interfaces and inside interface types that<br />
NAT is currently enabled between. It displays the following information:<br />
• NAT object identification number<br />
• NAT object name<br />
• Outside security interface name<br />
• Inside interface type<br />
Example --> nat status<br />
NAT enabled on:<br />
ID | Name | Interface | Type<br />
------------------------------------------<br />
1 | n2 | ip2 | internal<br />
2 | n1 | if1 | internal<br />
------------------------------------------<br />
See also NAT ENABLE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 203<br />
Chapter 10<br />
IGMP snooping and IGMP proxy<br />
Multicasting Overview<br />
Multicasting is a technique developed to send packets from one location in the<br />
Internet to many other locations, without any unnecessary packet duplication. In<br />
multicasting, one packet is sent from a source and is replicated as needed in the<br />
network to reach as many end-users as necessary.<br />
The concept of a group is crucial to multicasting. Every multicast requires a<br />
multicast group; the sender (or source) transmits to the group address, and only<br />
members of the group can receive the multicast data. A group is defined by a Class<br />
D address.<br />
Multicasting is useful because it conserves bandwidth by replicating packets as<br />
needed within the network, thereby not transmitting unnecessary packets.<br />
Multicasting is the most economical technique for sending a packet stream (which<br />
could be audio, video, or data) from one location to many other locations on the<br />
Internet simultaneously.<br />
Of course, multicasting has to be a connectionless process. The server simply sends<br />
out its multicast UDP packets, with no idea who will be receiving them, and<br />
whether they get received. It would be quite impossible for the server to have to<br />
wait for ACKs from all the recipients, and remember to retransmit to those<br />
recipients from whom it does not receive ACKs. Apart from anything else the server<br />
does not know who the recipients are, or how many there are.<br />
Multicasting principles<br />
Group addresses<br />
A multicast stream is a stream of data whose destination address is a multicast<br />
address – ie an IP address with the first byte having a value of 224 to 240. The<br />
destination address used by a stream is referred to as its Group address. These<br />
Group Addresses, like all IP addresses, are a limited resource, and there are all sorts<br />
of rules about who may use addresses from which address ranges.
204 Chapter 10 – IGMP snooping and IGMP proxy<br />
Anyway, a server sends out its stream to a group multicast address but the way it is<br />
routed to the hosts that actually want to receive it is a very different process to<br />
routing unicast packets. With unicast packets, the destination address of the packet<br />
uniquely identifies the host who should receive the packet and all the routers along<br />
the path just need to look in their routing tables to work out which is the correct<br />
route to send the packet down.<br />
However, in the case of multicast, the stream is simply being sent out, with no<br />
particular knowledge of who wants to receive it, and where the recipients are. One<br />
approach would be for every router that receives a multicast stream on one interface<br />
to just retransmit that stream out ALL its other interfaces. In that way it would be<br />
guaranteed to eventually reach every host that might be interesting in receiving it.<br />
However, that would be an inefficient use of bandwidth, as a lot of the time the<br />
routers would sending the streams out along paths that do not contain any hosts<br />
that want to receive them. Given that the main reason for having multicasting is to<br />
make efficient use of bandwidth, this would not be a good approach.<br />
So, a more efficient approach is needed. This is where IGMP comes in.<br />
IGMP<br />
IGMP (Internet Group Management Protocol) is the protocol whereby hosts indicate<br />
that they are interested in receiving a particular multicast stream. When a host<br />
wants to receive a stream (in multicast jargon, this is called ‘joining a group’) it<br />
sends to its local router an IGMP packet containing the address of the group it<br />
wants to join – this is called an IGMP Membership report (sometimes called a Join<br />
packet).<br />
Now, the local router is generally going to be a long way from the server that is<br />
generating the stream. So, having received the IGMP join packet, the router then<br />
knows that it has to forward the multicast stream onto its LAN (if it is not doing so<br />
already). However, if the router is not already receiving the multicast stream from<br />
the server (probably many hops away) what does the router do next in order to<br />
ensure that the multicast stream gets to it? This is achieved by elaborate process<br />
involving multicast routing protocols like PIM, DVMRP, MOSPF<br />
The IGMP packet exchange proceeds as follows:<br />
At a certain period (default is 125 seconds), the router sends an IGMP query<br />
message onto the local LAN. The destination address of the query message is a<br />
special “all multicast groups” address. The purpose of this query is to ask “are there<br />
any hosts on the LAN that wish to remain members of Multicast Groups?”<br />
Hosts on the LAN receive the query, if any given host wishes to remain in a<br />
Multicast group, it sends a new IGMP Membership report (Join message) for that<br />
group (of course some hosts may be members of more than one group – so they will<br />
send join messages for all the groups that they are members of).<br />
The router looks at the responses it receives to its query, and compares these to the<br />
list of Multicast streams that it has currently registered to receive. If there are any<br />
items in that list for which it has not received query responses, it will send a<br />
message upstream, asking to no longer receive that stream – ie to be ‘pruned’ from<br />
the tree through which that stream is flowing.<br />
In IGMP version 2, the IGMP leave message was added. So, a host can now<br />
explicitly inform its router that it wants to leave a particular multicast group. So, the
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 205<br />
router keeps a table of how many hosts have joined particular groups, and removes<br />
hosts from the table when it receives leave messages, then it can know straight away<br />
when there are no hosts on its LAN that are still members of a given group. So, it<br />
can ask to be pruned from that tree straight away, rather than having to wait until<br />
the next query interval.<br />
Multicast MAC addresses<br />
Multicast IP addresses are Class D IP addresses. So, all IP addresses from 224.0.0.0<br />
to 239.255.255.255 are multicast IP addresses. They are also referred to as Group<br />
Destination Addresses (GDA).<br />
For each GDA there is an associated MAC address. This MAC address is formed by<br />
01-00-5e, followed by the last 23 bits of the GDA translated in hex. Therefore:<br />
230.20.20.20 corresponds to MAC 01-00-5e-14-14-14<br />
224.10.10.10 corresponds to MAC 01-00-5e-0a-0a-0a<br />
Consequently, this is not a one-to-one mapping, but a one-to-many mapping:<br />
224.10.10.10 corresponds to MAC 01-00-5e-0a-0a-0a<br />
226.10.10.10 corresponds to MAC 01-00-5e-0a-0a-0a, as well.<br />
It is required that when an IP multicast packet is sent onto an Ethernet, the<br />
destination MAC address of the packet must be the MAC address that corresponds<br />
to the packet’s GDA. So, it is possible, from the destination MAC address of a<br />
multicast packet, to know the set of values that its GDA must fall within.<br />
IGMP snooping<br />
IGMP snooping is a filtering process that AT-RG613, AT-RG623 and AT-RG656<br />
residential gateways perform at layer 2 to reduce the amount of multicast traffic on<br />
a LAN.<br />
It is designed to solve the problem when a multicast traffic is received from a layer 2<br />
switch due to join requests performed by hosts connected to some of the switch<br />
ports.<br />
If individual hosts on the LAN (ie hosts connected to ports on the switches) wish to<br />
receive multicast streams, then they will send out IGMP joins, which will get up to<br />
the multicast router; and the router will join into the appropriate multicast trees;<br />
and the multicast flows will then reach the router, and it will forward them into the<br />
LAN.<br />
By default, when a switch receives a multicast packet, it must forward it out all its<br />
ports (except the port upon which it was received). So, considering the example<br />
where only host number 1 actually requests to join a particular multicast group,<br />
what will happen is that all the hosts on the LAN will start receiving the multicast<br />
packets, as all the switches will forward the multicast packets to all their ports.<br />
This is rather a waste of bandwidth, and the purpose of multicasting is to make<br />
efficient use of bandwidth.<br />
The solution to this problem is to make the layer-2 switch aware of the IGMP<br />
packets that are being passed around. That is, although the IGMP packets are<br />
destined for the router, the layer-2 switch needs to ‘snoop’ them as they go past.
206 Chapter 10 – IGMP snooping and IGMP proxy<br />
Then the layer-2 switch can be aware which hosts have asked to join which<br />
multicast groups, and so will only forward the multicast data to the places where it<br />
really needs to go.<br />
IGMP snooping on AT-VP6x3 product family<br />
IGMP snooping is activated using the IGMP SNOOPING ENABLE command.<br />
When IGMP snooping is enabled, it works separately for each VLAN. All multicast<br />
traffic as well as multicast signaling generated within a VLAN is kept within VLAN<br />
boundaries.<br />
IGMP snooping on Residential Gateway is designed in order to allow AT-RG613,<br />
AT-RG623 and AT-RG656 models to work in a network environment where both<br />
multicast router(s) and multicast host(s) are present.<br />
Basically the Residential Gateway tries to construct an internal view of the multicast<br />
network based on the IGMP messages received both from multicast router(s) and<br />
multicast host(s).<br />
The following is a description of the IGMP snooping behavior that the Residential<br />
Gateway implements at layer 2.<br />
Multicast Router Port Discovery<br />
The system listens for IGMP Membership General Query packets sent to the<br />
address 01-00-5e-00-00-01 and records the port(s) where any such message has been<br />
received.<br />
In this way the Residential Gateway knows where multicast routers are located in<br />
order to forward report and leave messages only to the correct port(s).<br />
<br />
Note that multiple VLANs can be present in the system and therefore more than<br />
one multicast router can be present. The command IGMP SNOOPING SHOW<br />
reports the multicast router IP address discovered for each VLAN and the<br />
physical port where it has been detected.<br />
Multicast Hosts Port Discovery<br />
The system listens for unsolicited IGMP Report messages that hosts send to join a<br />
multicast group and records the port where each message has been received. The<br />
action that the RG6x3 performs after having received an IGMP report depends on<br />
the circumstances in which the packet is received. To understand this, let us<br />
consider two possible scenarios:<br />
• First Scenario: Host A is the first host in its Ethernet segment to join a group.<br />
Host A sends an unsolicited IGMP Membership report.<br />
The Residential Gateway intercepts the IGMP membership report sent Host A<br />
and creates a multicast entry for the group that host A was requesting and links<br />
this entry to the port on which it has received the report.<br />
It also resets a local Timeout timer to the Timeout Interval value (default 270secs).<br />
This timer is used to refresh the local multicast membership table periodically<br />
(see later in the description).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 207<br />
The Residential Gateway forwards the IGMP report on to the multicast router<br />
detected on the VLAN where host is attached. In this way the router will also<br />
receive the IGMP report and will update its multicast routing table accordingly.<br />
Immediately multicast traffic for the requested group address is forwarded only<br />
to the port where the report from Host A has been received.<br />
• Second Scenario: another host, host B, on the same Ethernet segment as host A,<br />
sends an IGMP report to join the same multicast group as host A.<br />
Host B sends an unsolicited IGMP Membership report.<br />
The Residential Gateway intercepts the IGMP membership report sent by Host B.<br />
As a multicast entry for this group already exists, the Residential Gateway simply<br />
adds the port to the already existing entry for that multicast group and resets the<br />
Timeout timer to the Timeout Interval.<br />
The command IGMP SNOOPING SHOW will report only the last host joined the<br />
group and the new value of the Timeout timer.<br />
If another host joins another multicast group or the same multicast group, the same<br />
procedures described in the first and second scenarios are performed, respectively.<br />
A new Group entry will be added whenever a new group has been joined.<br />
<br />
Note: In order to maintain group membership, the multicast router sends IGMP<br />
queries periodically. This query is intercepted by the Residential Gateway and<br />
forwarded to all ports on the switch. All hosts that are members of the group<br />
will answer that query. The IGMP protocol was designed in such a way that<br />
only one member of any group on any VLAN would have to respond to any<br />
given query. But, because the Residential Gateway intercepts the reports, the<br />
hosts do not see each other’s reports, and thus, all hosts send a report (instead of<br />
one per group). The Residential Gateway then forwards on to the router only<br />
one report per group from among all received responses.<br />
Leaving a Group<br />
When a host wants to leave group it sends an IGMP Leave message specific for the<br />
group it wants to leave.<br />
The Residential Gateway captures the IGMP Leave message and immediately sends<br />
an IGMP Group Specific Query on the port where it received the Leave message.<br />
The Leave Time value is used in the query message to request a fast response from<br />
other hosts which may be present on the same Ethernet segment.<br />
If no answer is received to the Query, and if no other ports have hosts joined to the<br />
same multicast group, then the leave messages is forwarded to the multicast router.<br />
In this way the multicast traffic the router is asked to stop sending any multicast<br />
data for that particular group.<br />
If other ports have hosts joined to the same multicast group, the IGMP Group<br />
Specific Query is also sent to all those ports.
208 Chapter 10 – IGMP snooping and IGMP proxy<br />
Only if no answers are received on all the ports within the Leave Time period, the<br />
leave message is forwarded to the multicast router.<br />
To change the Leave Time value, use the IGMP SNOOPING SET LEAVETIME<br />
command.<br />
<br />
Note: If the Leave Time period is set to 0 secs (see IGMP SNOOPING SET<br />
LEAVETIME command) and only one port has hosts joined the multicast group,<br />
the Residential Gateway immediately forwards the leave message to the<br />
multicast router and removes the multicast membership record without sending<br />
any IGMP Specific Query message.<br />
If more than one port has hosts joined the multicast group and Leave Time<br />
period is set to 0 secs the Residential Gateway removes the port from the<br />
multicast membership record without sending any IGMP Specific Query<br />
message and without forwarding the leave message to the multicast router.<br />
Timeout interval expiring<br />
When the Timeout Interval expires, the Residential Gateway sends an IGMP Specific<br />
Group Query to discover if there is any host on the port that is member of a<br />
particular multicast group.<br />
If no answer is received, the Residential Gateway sends a leave message specific for<br />
the multicast group to the multicast router.<br />
IGMP proxy<br />
Independently of IGMP snooping, the AT-RG613, AT-RG623 and AT-RG656<br />
residential gateways also support IGMP proxy.<br />
IGMP proxy is a layer-3 feature that allows multicast traffic to be routed between<br />
multiple IP interfaces.<br />
As noted in the previous section, by default, multicast traffic is limited to the VLAN<br />
where it is received. If a host joins a multicast group but multicast traffic is received<br />
on another VLAN to which the host is not connected, the multicast traffic will never<br />
reach the host.<br />
IGMP proxy overrides this limitation, with the only constraint that multicast traffic<br />
must be received only on one IP interface called the upstream interface.<br />
In this case, when a host joins a multicast group, the IP interface attached to the<br />
transport (VLAN) where the host is located, becomes a downstream interface. It will<br />
receive all the multicast traffic related to the group that the host has joined.<br />
To define the upstream IP interface use the IGMP PROXY SET<br />
UPSTREAMINTERFACE command.<br />
To show the multicast groups currently registeredwith the IGMP proxy on the<br />
Residential Gateway use the IGMP PROXY SHOW STATUS command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 209<br />
IGMP Snooping Command <strong>Reference</strong><br />
This section describes the commands available on AT-RG613, AT-RG623 and AT-<br />
RG656 Residential Gateway to enable, configure and manage the IGMP snooping<br />
feature.<br />
IGMP snooping CLI commands<br />
The table below lists the igmp snooping commands provided by the CLI:<br />
Command<br />
IGMP SNOOPING DISABLE<br />
IGMP SNOOPING ENABLE<br />
IGMP SNOOPING SET LEAVETIME<br />
IGMP SNOOPING SET QUERYINTERVAL<br />
IGMP SNOOPING SET TIMEOUT<br />
IGMP SNOOPING SHOW<br />
IGMP SNOOPING DISABLE<br />
Syntax IGMP SNOOPING DISABLE<br />
Description This command disables the layer- 2 IGMP snooping feature previously enabled<br />
with the IGMP SNOOPING ENABLE command.<br />
Example --> igmp snooping disable<br />
See also IGMP SNOOPING ENABLE<br />
IGMP SNOOPING ENABLE<br />
Syntax IGMP SNOOPING ENABLE<br />
Description This command enables the layer-2 IGMP snooping feature.<br />
Default timeout values are used:<br />
leavetime<br />
queryinterval<br />
timeout<br />
10secs<br />
125secs<br />
270secs<br />
Example --> igmp snooping enable.<br />
See also IGMP SNOOPING DISABLE<br />
IGMP SNOOPING SET
210 Chapter 10 – IGMP snooping and IGMP proxy<br />
IGMP SNOOPING SET LEAVETIME<br />
Syntax IGMP SNOOPING SET LEAVETIME <br />
Description This command sets the duration of the Leave Period timer for the IGMP snooping<br />
process. The timer controls the maximum allowed time before hosts must send a<br />
response to Query message issued by the Residential Gateway.<br />
When IGMP snooping is enabled, by default this value is set to 10 secs.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
leavetime<br />
The leavetime value expressed in seconds.<br />
Valid values are from 0 to 65535.<br />
10<br />
Example --> igmp snooping set leavetime 50<br />
See also IGMP SNOOPING ENABLE<br />
IGMP SNOOPING SET QUERYINTERVAL<br />
Syntax IGMP SNOOPING SET QUERYINTERVAL <br />
Description This command sets the time interval, in seconds, at which IGMP Host Membership<br />
Queries are sent. When IGMP snooping is enabled, by default this value is set to 125<br />
secs.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
queryinterval<br />
The Query Interval value expressed in<br />
seconds.<br />
Valid values are from 1 to 65535.<br />
125<br />
Example --> igmp snooping set queryinterval 110<br />
See also IGMP SNOOPING ENABLE<br />
IGMP SNOOPING SET TIMEOUT<br />
Syntax IGMP SNOOPING SET TIMEOUT <br />
Description This command sets the longest interval, in seconds, for which a group will remain
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 211<br />
in the local multicast group database without the Residential Gateway receiving a<br />
Host Membership Report for this multicast group.<br />
When IGMP snooping is enabled, by default this value is set to 270 secs.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
timeout<br />
The timeout interval value expressed in<br />
seconds.<br />
Valid values are from 1 to 65535.<br />
270<br />
Example --> igmp snooping set timeout 125<br />
See also IGMP SNOOPING ENABLE<br />
IGMP SNOOPING SHOW<br />
Syntax IGMP SNOOPING SHOW<br />
Description This command show IGMP snooping status.<br />
The following information are reported:<br />
Query Interval<br />
Interval at which Host Membership Queries are<br />
sent.<br />
Timeout Interval<br />
Interface Name<br />
Multicast Router<br />
Group List<br />
Group<br />
Interval after which entries will be removed<br />
from the group database.<br />
VLAN reference.<br />
Recognized Multicast route.<br />
Membership list for this VLAN.<br />
The group multicast address. “Multicast Filter”<br />
highlights members useful to stop<br />
Port<br />
Last Adv<br />
Refresh time<br />
Port where the member is attached.<br />
The last host to advertise the membership<br />
report or query.<br />
The time interval (in seconds) until the<br />
membership group will be deleted.<br />
See also IGMP SNOOPING ENABLE
212 Chapter 10 – IGMP snooping and IGMP proxy<br />
IGMP Proxy Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the IGMP proxy<br />
feature.<br />
IGMP proxy CLI commands<br />
The table below lists the IGMP PROXY commands provided by the CLI:<br />
Command<br />
IGMP PROXY SET<br />
IGMP PROXY SHOW<br />
IGMP PROXY SET UPSTREAMINTERFACE<br />
Syntax IGMP PROXY SET UPSTREAMINTERFACE { | NONE}<br />
Description This command enables the residential gatewayʹs IGMP Proxy, and sets one of the<br />
existing IP interfaces as the upstream interface; all other interfaces are designated<br />
downstream interfaces. The upstream interface implements the Host portion of the<br />
IGMP protocol, and the downstream interfaces implement the Router portion of the<br />
IGMP protocol. The IGMP Proxy may be disabled by setting upstream interface to<br />
none.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ip_interface<br />
The name of an existing interface that you<br />
want to set as the upstreaminterface.<br />
N/A<br />
NONE Disables IGMP proxy N/A<br />
Example --> igmp proxy set upstreaminterface ip0<br />
See also IGMP PROXY SHOW STATUS<br />
IGMP PROXY SHOW UPSTREAMINTERFACE<br />
Syntax IGMP PROXY SHOW UPSTREAMINTERFACE<br />
Description This command displays the status of the upstream interface. If an upstream<br />
interface has been set using the IGMP PROXY SET UPSTREAMINTERFACE<br />
command, this command displays the current setting.<br />
Example --> igmp proxy show upstreaminterface<br />
IGMP Proxy configuration
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 213<br />
Upstream If : ip0<br />
See also IGMP PROXY SET UPSTREAMINTERFACE<br />
IGMP PROXY SHOW STATUS<br />
Syntax IGMP PROXY SHOW STATUS<br />
Description This command displays the following information about the status of IGMP proxy:<br />
• IGMP Proxy group membership per interface details<br />
• Interface name and querier status<br />
• Group address<br />
Example --> igmp proxy show status<br />
Multicast group membership:<br />
Interface (querier) | Group address<br />
---------------------|-----------------<br />
eth0 (yes) | 239.255.255.250<br />
---------------------------------------<br />
See also IGMP PROXY SHOW UPSTREAMINTERFACE
214 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
Chapter 11<br />
Dynamic Host Configuration Protocol - DHCP<br />
Introduction<br />
The Dynamic Host Configuration Protocol (DHCP) is defined in RFC 1541 and<br />
provides a mechanism for passing configuration information to hosts on a TCP/IP<br />
network.<br />
DHCP is based on the Bootstrap Protocol (BOOTP) defined in RFC 1542, but adds<br />
automatic allocation of reusable network addresses and additional configuration<br />
options.<br />
DHCP is based on a client–server model, where the server is the host that allocates<br />
network addresses and initialization parameters, and the client is the host that<br />
requests these parameters from the server.<br />
There are a number of parameters that a DHCP server can supply to clients in<br />
addition to assigning IP addresses. They can supply addresses of DNS server, WINS<br />
Server, Cookie server etc… Also, they can supply the gateway address for the LAN.<br />
DHCP supports three mechanisms for IP address allocation<br />
• In the automatic allocation mechanism, DHCP assigns a permanent IP address to a<br />
host.<br />
• In the dynamic allocation mechanism, DHCP assigns an IP address to a host for a<br />
limited period of time, or until the host explicitly relinquishes the address.<br />
• In the manual allocation mechanism, the network administrator assigns a host’s IP<br />
address, and DHCP is used simply to convey the assigned address to the host. A<br />
particular network will use one or more of these mechanisms, depending on the<br />
policies of the network administrator.<br />
Dynamic allocation is the only one of the three mechanisms that allows automatic<br />
reuse of an address that is no longer needed by the host to which it was assigned.<br />
Dynamic allocation is particularly useful for assigning an address to a host that will<br />
be connected to the network only temporarily, or for sharing a limited pool of IP<br />
addresses among a group of hosts that do not need permanent IP addresses.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 215<br />
Dynamic allocation may also be a good choice for assigning an IP address to a new<br />
host being permanently connected to a network where IP addresses are sufficiently<br />
scarce that it is important to reclaim them when old hosts are retired.<br />
DHCP support on AT-RG6xx Residential Gateway<br />
series<br />
The AT-RG613, AT-RG623 and AT-RG656 are able to act both as DHCP server and<br />
as DHCP client.<br />
Typically, DHCP server features are activated on the internal network to assign IP<br />
address to hosts connected to the internal interfaces. The DHCP client function,<br />
instead, is used on the external interface to get IP addresses from the ISP.<br />
The AT-RG613, AT-RG623 and AT-RG656 also support DHCP relay functionality. In<br />
this case the Residential Gateway picks up DHCP requests sent by hosts connected<br />
to the internal interfaces, and forwards their requests to an external DHCP server<br />
and then routes back to the hosts the replies that are received from the server.<br />
DHCP server<br />
The DHCP protocol allows a host which is unknown to the network administrator<br />
to be automatically assigned a new IP address out of a pool of IP addresses for its<br />
network. In order for this to work, the network administrator allocates address<br />
pools for each available subnet and enters them into the dhcpd.conf file.<br />
On startup, the DHCP server software reads the dhcpd.conf file and stores a list of<br />
available addresses on each subnet. When a client requests an address using the<br />
DHCP protocol, the server allocates an address for it.<br />
Each client is assigned a lease, which expires after an amount of time chosen by the<br />
administrator (by default, 12 hours). Some time before the leases expire, the clients<br />
to which leases are assigned are expected to renew them in order to continue to use<br />
the addresses. Once a lease has expired, the client to which that lease was assigned<br />
is no longer permitted to use the leased IP address and must resort back to the<br />
DHCPDISCOVER mechanism ( see RFC 2131) to request a new lease.<br />
In order to keep track of leases across system reboots and server restarts, the server<br />
keeps a list of leases it has assigned in the dhcpd.leases file (stored in ISFS)<br />
Before a lease is granted to a host, it records the lease in this file. Upon startup, after<br />
reading the dhcpd.conf file, the DHCP server reads the dhcpd.leases file to gain<br />
information about which leases had been assigned before reboot.<br />
New leases are appended to the end of the lease file.<br />
In order to prevent the file from becoming arbitrarily large, the server periodically<br />
creates a new dhcp.leases file from its lease database in memory.<br />
If the system crashes in the middle of this process, only the lease file present in flash<br />
memory can be restored. This gives a window of vulnerability whereby leases may<br />
be lost.<br />
BOOTP support is also provided by this server. Unlike DHCP, the BOOTP protocol<br />
does not provide a protocol for recovering dynamically-assigned addresses once
216 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
they are no longer needed. It is still possible to dynamically assign addresses to<br />
BOOTP clients, but some administrative process for reclaiming addresses is<br />
required. By default, leases are granted to BOOTP clients in perpetuity, although the<br />
network administrator may set an earlier cut-off date or a shorter lease length for<br />
BOOTP leases if that makes sense.<br />
Example:<br />
This paragraph provides a guide to configuring the DHCP server using commands<br />
available on the CLI.<br />
Letʹs assuming that in the system there has been defined an internal interface (where<br />
the DHCP Server module will run) with the following IP address and netmask:<br />
192.168.219.1 255.255.255.<br />
The following DHCP server configuration will create a range of 10 available IP<br />
addresses in the 192.168.219.0 subnet:<br />
dhcpserver add subnet mysubnet 192.168.219.0 255.255.255.0 192.168.219.10<br />
192.168.219.20<br />
dhcpserver set subnet mysubnet defaultleasetime 1800<br />
dhcpserver set subnet mysubnet maxleasetime 86000<br />
dhcpserver subnet mysubnet add option domain-name-servers 192.168.220.30<br />
dhcpserver subnet mysubnet add option routers 192.168.221.40<br />
dhcpserver subnet mysubnet add option irc-server 10.5.7.20<br />
dhcpserver subnet mysubnet add option auto-configure 1<br />
• Default lease time and maximum lease time are set to 1800 seconds and 86000<br />
seconds, respectively.<br />
• Four DHCP options are configured, in addition to the usual IP address and<br />
subnet mask:<br />
• DNS server address of 192.168.220.30;<br />
• default gateway address of 192.168.221.40;<br />
• IRC server address of 10.5.7.20;<br />
• and the “auto-configure” option, which will allow use of address autoconfiguration<br />
by clients on the network.<br />
Instead of specifying the ʺdomain-name-serversʺ and ʺroutersʺ options manually,<br />
the following commands could have been used which provide automatic values for<br />
these options:<br />
dhcpserver set subnet mysubnet hostisdnsserver enabled<br />
dhcpserver set subnet mysubnet hostisdefaultgateway enabled<br />
This will result in the DHCP server taking the IP address of the IP interface it is<br />
running on, and supplying that address to DHCP clients as the DNS server and<br />
default gateway, respectively. This is especially useful in a deployment that utilizes<br />
the DNS relay on the residential gateway.<br />
<br />
Note that for DHCP clients using DHCPINFORM, the above declarations mean<br />
that the server would supply the given configuration options to any client that<br />
is on the 192.168.219.x subnet. This even includes clients that are not included in<br />
the available address ranges – this is sensible, since ideally the DHCP server
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 217<br />
should not have addresses available to give out that may already belong to<br />
hosts on the same subnet.<br />
The CLI can also be used to define fixed host/IP address mappings. For example, the<br />
command:<br />
dhcpserver add fixedhost myhost 192.168.219.5 00:20:2b:01:02:03<br />
Will add a fixed mapping of the IP address 192.168.219.5 to a host whose ethernet<br />
MAC address is 00:20:2b:01:02:03.<br />
<br />
<br />
Note that fixed IP mappings cannot overlap with dynamic IP ranges on a<br />
subnet, and vice-versa (you will receive an error message if you try to do this).<br />
Note that you will still need to have a suitable subnet declaration – for example,<br />
a subnet 192.169.219.0 with netmask 255.255.255.0, as shown earlier. Any<br />
configuration options you define in this subnet will also be offered to every<br />
fixed host you have added which is also on the given subnet.<br />
It is also possible to assign a maximum lease duration to fixed DHCP clients as<br />
follows:<br />
dhcpserver set fixedhost myhost maxleasetime 7200<br />
In this context, a fixed lease duration would normally be used to allow DHCP<br />
clients to see changes in offered options quickly. The IP address itself is always<br />
guaranteed to be available for assignment to the specific host (unless there are other<br />
DHCP servers on the same network that are deliberately configured to conflict).<br />
You might see the following message if you have ever turned off the DHCP server:<br />
<br />
Note the DHCP server is not currently enabled.<br />
dhcpserver enable<br />
dhcpserver update<br />
If you see this, issue the following command:<br />
The final step is to tell the system to update the DHCP server software with the new<br />
IP interface and configuration that has been defined. To do this, issue the following<br />
command:<br />
<br />
NOTE: NO configuration changes that you have made on the DHCP server will<br />
take effect until you enter the DHCPSERVER UPDATE command.
218 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCP client<br />
A DHCP client uses the facilities of the IP stack to transmit and receive DHCP<br />
packets. This information is processed by the client and passed back to the IP stack<br />
to complete interface configuration for the lease duration.<br />
A DHCP client is created on a given interface by using the IP SET INTERFACE<br />
command with the parameter dhcp enabled. After this, the IP settings are discovered<br />
for the interface (Itʹs possible define one or more interfaceconfig rules to customize<br />
the option that must be requested).<br />
This section describes how these settings are discovered.<br />
Firstly, the interface is disabled for all non-DHCP traffic. This will reset the IP<br />
address and subnet mask of each nominated interface to 0.0.0.0.<br />
The DHCP client learns its required configuration details via a DHCPDISCOVER<br />
request.<br />
If configuration details are not successfully obtained using DHCP, the DHCP client<br />
will retry indefinitely in order to learn them, as described in RFC2131 (unless the<br />
interface is disabled). Retry characteristics can be defined using DHCPCLIENT SET<br />
RETRY command.<br />
Once the DHCP client has accepted a suitable configuration for the interface, it has<br />
to configure the IP stack appropriately. This involves allocating the new IP address<br />
to the interface and configuring the subnet for the interface.<br />
Addresses allocated by DHCP expire after the specified lease time runs out. If this<br />
happens, the DHCP client must relearn its configuration by repeating the process<br />
described above. The client will attempt to initiate renewal of a held lease well<br />
before it is due to expire (approximately half way through the total duration of the<br />
lease). This avoids the problem of an active interface being unexpectedly disabled<br />
and dropping normal IP traffic.<br />
The DHCP client on the AT-RG613, AT-RG623 and AT-RG656 DHCP conforms to<br />
most of the specification given in RFC2131. A subset of the DHCP options described<br />
in RFC2132 is supported.<br />
The residential Gateway DHCP client accepts and makes use of the following<br />
information:<br />
• IP address<br />
• Subnet mask<br />
• Default route (one only)<br />
• Domain name servers (up to two can be usefully supported by DNS relay)<br />
• Host name or dhcp-client-identifier. This option can be used to specify a client<br />
identifier in a host declaration, so that a DHCP server can find the host record by<br />
matching against the client identifier. This option can be useful when attempting<br />
to operate the DHCP client with a Microsoft DHCP server.<br />
<br />
Note: When attempting to use a DHCP client with a Microsoft DHCP server,<br />
then “send dhcpclient-identifier” is mandatory, and must be specifically set to
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 219<br />
the MAC address of the device upon which the client is running; otherwise<br />
DHCP will not work at all.<br />
Lease requirements and requests<br />
The DHCP protocol allows the client to request that the server send it specific<br />
information, and not send it other information that it is not prepared to accept. The<br />
protocol also allows the client to reject offers from servers if they do not contain<br />
information the client needs, or if the information provided is not satisfactory.<br />
Using the DHCPCLIENT INTERFACE CONFIG ADD REQUESTED OPTION<br />
command causes the client to request that any server responding to the client send<br />
the client its values for the specified options. Only the option names should be<br />
specified in the request statement - not option parameters.<br />
Using the DHCPCLIENT INTERFACE CONFIG ADD REQUIRED OPTION<br />
command configures a lists of options that must be sent in order for an offer to be<br />
accepted. Offers that do not contain all the listed options will be ignored.<br />
Using the DHCPCLIENT INTERFACE CONFIG ADD SENT OPTION command<br />
causes the client to send the specified options to the server with the specified values.<br />
Options that are always sent in the DHCP protocol should not be specified here,<br />
except that the client can specify a requested-lease-time option other than the default<br />
requested lease time, which is two hours. The other obvious use for this statement is<br />
to send information to the server that will allow it to differentiate between this client<br />
and other clients or kinds of clients.<br />
Support for AutoIP<br />
The DHCP client supports also IP address auto-configuration, to b e referred to as<br />
“AutoIP” in this manual . This includes support for RFC2563, which allows network<br />
administrators to configure DHCP servers to deny this auto-configuration capability<br />
to clients.<br />
In summary, AutoIP will be engaged after a DHCP client fails to contact a DHCP<br />
server and cannot obtain a lease. A pseudo-random algorithm invents an IP address<br />
on the 169.254 subnet. Collisions are avoided by issuing ARP requests for the<br />
suggested IP address, abandoning the address if it is already active on the network.<br />
Additionally, the suggested address will be abandoned if any other host on the<br />
network issues an ARP probe (i.e. the host issuing the ARP has source address<br />
0.0.0.0) for that IP address.<br />
Having auto-configured an IP address, the DHCP client will periodically check that<br />
it still cannot contact a DHCP server. If the client finds it can now obtain a legitimate<br />
lease from a DHCP server, this lease will supercede any auto-configured IP address.<br />
To turn on the AutoIP feature use DHCPCLIENT SET INTERFACECONFIG<br />
AUTOIP ENABLED command<br />
To prevent the DHCP client from using AutoIP, USE DHCPCLIENT SET<br />
INTERFACECONFIG AUTOIP DISABLED command.
220 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
Additional DHCP client modes<br />
There are two additional DHCP client modes for more fine control of how<br />
configuration parameters are accepted and propagated. The first mode allows you<br />
to choose how DNS servers are to be used; the second mode allows you to use<br />
parameters received on a DHCP client interface to automatically set up a DHCP<br />
server on another interface in the system.<br />
Propagating DNS server information<br />
You can tell the DHCP client what to do with received DNS server addresses. The<br />
pertinent attributes are giveDnsToRelay and giveDnsToClient. As is evident from the<br />
parameter names, the effect of these settings is to cause the DHCP process to pass to<br />
the DNS relay and client processes the DNS server address(es) it has learnt, which<br />
they are then able to use for DNS queries.<br />
By default, DNS server addresses are only given to the DNS relay, if present.<br />
For example, to set this up via the CLI, the following command sequence can be<br />
used:<br />
dhcpclient add interfaceconfig client1 eth0<br />
dhcpclient interfaceconfig 1 add requested option domain-name-servers<br />
dhcpclient set interfaceconfig client1 givednstorelay enabled<br />
dhcpclient set interfaceconfig client1 givednstoclient enabled<br />
Automatically setting up a DHCP server<br />
It is possible to tell the DHCP client to use parameters it has obtained to<br />
automatically set up a DHCP server.<br />
If you choose this mode, you must tell DHCP client how large an IP address lease<br />
pool you would like the new server to have, and which IP interface you want the<br />
new DHCP server to bind to.<br />
If you do not supply any interface information, the DHCP client will try to place the<br />
DHCP server on the first LAN interface it finds (the DHCP client will regard an IP<br />
interface as being a LAN interface)<br />
The new DHCP server’s address pool will start one IP address after the IP address<br />
of the interface upon which the DHCP server has been set up. That is, if the DHCP<br />
client is configured to set up the DHCP server on an IP interface named ʺuplinkʺ,<br />
with address 192.168.219.2, the address range will commence from address<br />
192.168.219.3.<br />
At present, the new DHCP server will give out any DNS server addresses received<br />
by the DHCP client. It will then advertise its own host IP address as being the<br />
default gateway.<br />
To set this up via the CLI, the following command sequence can be used:<br />
dhcpclient add interfaceconfig client1 eth0<br />
dhcpclient interfaceconfig 1 add requested option domain-name-servers<br />
dhcpclient set interfaceconfig client dhcpserverpoolsize 30<br />
dhcpclient set interfaceconfig client1 dhcpserverinterface uplink
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 221<br />
Example<br />
This paragraph provides a guide to setting up a DHCP client using commands<br />
available in the CLI.<br />
Letʹs assume that the system has been configured wirh an interface named eth0. The<br />
first step is to enable the dhcp flag on this interface:<br />
ip set interface eth0 dhcp enabled<br />
DHCP client configuration is optional. You do not need to perform these steps<br />
unless you have special requirements, such as specifying whether the use of AutoIP<br />
is allowed, specific requirements for which options are to be negotiated from a<br />
DHCP server, or specific requirements about what to do with option values when<br />
they are received.<br />
dhcpclient add interfaceconfig mycfg eth0<br />
dhcpclient set interfaceconfig mycfg requestedleasetime 3600<br />
dhcpclient set interfaceconfig mycfg clientid 00:20:2b:01:02:03<br />
dhcpclient set interfaceconfig mycfg autoip enabled<br />
dhcpclient set interfaceconfig mycfg givednstorelay enabled<br />
dhcpclient interfaceconfig mycfg add requested option domain-name-servers<br />
dhcpclient interfaceconfig mycfg add required option routers<br />
dhcpclient interfaceconfig mycfg add sent option host-name ’"galapagos"’<br />
<br />
Note: For options with string-type values associated with them, the option<br />
value must be in double-quotes (ʺ). Also, the entire string including the double<br />
quotes must be inside single quotes (ʹ) to ensure that the CLI treats the double<br />
quotes literally.<br />
These commands create a new DHCP client interface configuration related to the IP<br />
interface you defined earlier. Let us consider, line by line, what the above<br />
configuration does:<br />
• A lease time of one hour is requested.<br />
• A client identifier of 00:20:2b:01:02:03 is specified.<br />
• In the event of a DHCP server being unavailable, the DHCP client will<br />
automatically assign an address using AutoIP.<br />
• Any DNS server addresses received from a server will be passed to the DNS<br />
relay. (There is also an analogous option to pass the addresses to the DNS client).<br />
• For this to occur, the DHCP client must request DNS server addresses from a<br />
server (maps onto the ʺrequestʺ directive).<br />
• The DHCP client will insist that a default gateway parameter is present in any<br />
lease offer (maps onto the ʺrequireʺ directive).<br />
• Finally, the DHCP client will send out ʺgalapagosʺ as the value of the host name<br />
option – this can be used by some ISPs as part of a simple authentication process<br />
(maps onto the ʺsendʺ directive).<br />
The final step is to tell the Residential Gateway to update the DHCP client software<br />
with the new IP interface and configuration that has been defined. To do this, issue<br />
the following command:
222 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
dhcpclient update<br />
<br />
NOTE: NO configuration changes that you have made on the DHCP client will<br />
take effect until you enter the DHCPCLIENT UPDATE command.<br />
DHCP Relay<br />
A DHCP relay uses the facilities of the IP stack to transmit and receive DHCP<br />
packets.<br />
From a DHCP client’s point of view, the relay acts as a de-facto DHCP server, and<br />
this operation is transparent. This is useful where a network administrator only<br />
wishes to have one DHCP server across several physical and logical sub-networks.<br />
The relay works by forwarding all broadcasted client requests to one or more<br />
known DHCP servers.<br />
Server replies are then either broadcast or unicast back to the client via the DHCP<br />
relay.<br />
<br />
Note DHCP Server and DHCP relay cannot coexist simultaneously
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 223<br />
DHCP Server Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage DHCP Server<br />
module.<br />
DHCP server CLI commands<br />
The table below lists the DHCP server commands provided by the CLI:<br />
Command<br />
DHCPSERVER ADD FIXEDHOST<br />
DHCPSERVER ADD SUBNET<br />
DHCPSERVER CLEAR FIXEDHOST<br />
DHCPSERVER CLEAR SUBNETS<br />
DHCPSERVER DELETE FIXEDHOST<br />
DHCPSERVER DELETE SUBNET<br />
DHCPSERVER ENABLE|DISABLE<br />
DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER LIST OPTIONS<br />
DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SET ALLOWUNKNOWNCLIENTS<br />
DHCPSERVER SET BOOTP<br />
DHCPSERVER SET DEFAULTLEASETIME<br />
DHCPSERVER SET FIXEDHOST IPADDRESS<br />
DHCPSERVER SET FIXEDHOST MACADDRESS<br />
DHCPSERVER SET FIXEDHOST MAXLEASETIME<br />
DHCPSERVER SET MAXLEASETIME<br />
DHCPSERVER SET SUBNET DEFAULTLEASETIME<br />
DHCPSERVER SET SUBNET HOSTISDEFAULTGATEWAY<br />
DHCPSERVER SET SUBNET HOSTISDNSSERVER<br />
DHCPSERVER SET SUBNET MAXLEASETIME<br />
DHCPSERVER SET SUBNET SUBNET<br />
DHCPSERVER SHOW<br />
DHCPSERVER SHOW SUBNET<br />
DHCPSERVER SUBNET ADD IPRANGE<br />
DHCPSERVER SUBNET ADD OPTION<br />
DHCPSERVER SUBNET CLEAR IPRANGES
224 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPSERVER SUBNET CLEAR OPTIONS<br />
DHCPSERVER SUBNET DELETE IPRANGE<br />
DHCPSERVER SUBNET DELETE OPTION<br />
DHCPSERVER SUBNET LIST IPRANGES<br />
DHCPSERVER SUBNET LIST OPTIONS<br />
DHCPSERVER UPDATE<br />
DHCPSERVER ADD FIXEDHOST<br />
Syntax DHCPSERVER ADD FIXEDHOST <br />
Description This command creates a new fixed host mapping in the DHCP server.<br />
The commands informs the DHCP server to assign a specific IP address to a specific<br />
DHCP client based on the client’s MAC address.<br />
If a DHCPDISCOVER or DHCPREQUEST is received from the DHCP client with<br />
that MAC address, it will have the specified fixed IP address assigned to it.<br />
Itʹs necessary to also create a suitable DHCP subnet definition in order for fixed host<br />
mapping to work.<br />
<br />
Note: Itʹs not possible to create a fixed host mapping with an IP address that is<br />
already present inside a configured, dynamic IP range on a subnet. The reverse<br />
is also forbidden; itʹs not possible add addresses into a dynamic IP range that<br />
are already configured as fixed host addresses.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ipaddress<br />
macaddress<br />
An arbitrary name that identifies the fixed host<br />
mapping. It can be made up of one or more<br />
letters or a combination of letters and digits, but<br />
it cannot start with a digit.<br />
The IP address that is assigned to a DHCP client<br />
based on the client’s MAC address, displayed in<br />
the IPv4 format (e.g. 192.168.102.3)<br />
A MAC address displayed in the following<br />
format:<br />
##:##:##:##:##:##<br />
N/A<br />
N/A<br />
N/A<br />
Example The example below creates a fixed host mapping:<br />
--> dhcpserver add fixedhost myhost 192.168.219.1 00:20:2b:01:02:03
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 225<br />
The example below creates a suitable subnet for the above fixed host mapping. Note<br />
that the IP address used above is within the subnet, but is not within the range of IP<br />
addresses that constitute the server’s dynamic pool (192.168.219.10 – 192.168.219.20):<br />
--> dhcpserver add subnet mysubnet 192.168.219.0 255.255.255.0<br />
192.168.219.10 192.168.219.20<br />
See also DHCPSERVER DELETE FIXEDHOST<br />
DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER ADD SUBNET<br />
Syntax DHCPSERVER ADD SUBNET [ ]<br />
Description This command defines a subnet that requests will be received from, and a pool of<br />
addresses within that subnet. The DHCP server can allocate IP addresses from this<br />
pool to clients on request.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ipaddress<br />
netmask<br />
startaddr<br />
endaddr<br />
An arbitrary name that identifies subnet. It<br />
can be made up of one or more letters or a<br />
combination of letters and digits, but it<br />
cannot start with a digit.<br />
The base IP address of the subnet, displayed<br />
in the IPv4 format (e.g. 192.168.102.0)<br />
The netmask of the subnet, for example:<br />
255.255.255.0<br />
The first IP address in the pool of addresses.<br />
The IP address is displayed in the IPv4<br />
format (e.g. 192.168.102.3)<br />
The last IP address in the pool of addresses.<br />
The IP address is displayed the IPv4 format<br />
(e.g. 192.168.102.3)<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
-->dhcpserver add subnet sub1 239.252.197.0 255.255.255.0 239.252.197.10<br />
239.252.197.107<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER CLEAR FIXEDHOST<br />
Syntax DHCPSERVER CLEAR FIXEDHOSTS<br />
Description This command deletes all DHCPserver fixedhosts that were created using the
226 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPSERVER ADD FIXEDHOST commands.<br />
Example --> dhcpserver clear fixedhosts<br />
See also DHCPSERVER DELETE FIXEDHOST<br />
DHCPSERVER ADD FIXEDHOST<br />
DHCPSERVER CLEAR SUBNETS<br />
Syntax DHCPSERVER CLEAR SUBNETS<br />
Description This command deletes all DHCP server subnets that were created using the<br />
DHCPSERVER ADD SUBNET commands.<br />
Example --> dhcpserver clear subnets<br />
See also DHCPSERVER DELETE SUBNET<br />
DHCPSERVER DELETE FIXEDHOST<br />
Syntax DHCPSERVER DELETE FIXEDHOST <br />
Description This command deletes a single fixed host mapping in the DHCP server that was<br />
created using the DHCPSERVER ADD FIXEDHOST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing fixed host. To<br />
display fixed host names, use the<br />
DHCPSERVER LIST FIXEDHOSTS<br />
command.<br />
N/A<br />
Example --> dhcpserver delete fixedhost myhost<br />
See also DHCPSERVER ADD FIXEDHOST<br />
DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER CLEAR FIXEDHOST<br />
DHCPSERVER DELETE SUBNET<br />
Syntax DHCPSERVER DELETE SUBNET {|}<br />
Description This command deletes a single DHCP server subnet. The pool of IP addresses in the<br />
subnet are also deleted.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 227<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A<br />
Example --> dhcpserver delete subnet sub1<br />
See also DHCPSERVER CLEAR SUBNETS<br />
DHCPSERVER ENABLE|DISABLE<br />
Syntax DHCPSERVER {enable|disable}<br />
Description This command enables/disables the DHCP server.<br />
<br />
Note: DHCP server must be enabled in order to carry out any DHCP server<br />
configuration.<br />
DHCP server and DHCP relay cannot be enabled at the same time.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables configuration of the DHCP server<br />
Disables configuration of the DHCP server.<br />
enable<br />
Example --> dhcpserver enable<br />
See also DHCPRELAY ENABLE|DISABLE<br />
DHCPSERVER LIST FIXEDHOST<br />
Syntax DHCPSERVER LIST FIXEDHOST<br />
Description This command lists the following information about existing DHCP fixed host<br />
mappings:<br />
• fixed host ID number<br />
• fixed host name<br />
• IP address<br />
• MAC address
228 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
• Max lease time<br />
Example<br />
--> dhcpserver list fixedhosts<br />
DHCP server fixed host mappings:<br />
ID | Name | IP address | MAC address | Max Lease Time<br />
-----|---------|-----------------|--------------------|---------------<br />
1 | myhost | 192.168.219.0 | 00:20:2b:01:02:03 | 86400<br />
----------------------------------------------------------------------<br />
See also DHCPSERVER ADD FIXEDHOST<br />
DHCPSERVER SET FIXEDHOST IPADDRESS<br />
DHCP SET FIXEDHOST MACADDRESS<br />
DHCPSERVER FIXEDHOST MAXLEASETIME<br />
DHCPSERVER LIST OPTIONS<br />
Syntax DHCPSERVER LIST OPTIONS<br />
Description This command lists the option data types available for DHCP server.<br />
These options are detailed in RFC2132.<br />
Itʹs possible to configure the DHCP server to use any of the options listed.<br />
Example --> dhcpserver list options<br />
subnet-mask<br />
routers<br />
ien116-name-servers<br />
log-servers<br />
lpr-servers<br />
resource-location-servers<br />
boot-size<br />
domain-name<br />
root-path<br />
ip-forwarding<br />
policy-filter<br />
default-ip-ttl<br />
path-mtu-plateau-table<br />
all-subnets-local<br />
perform-mask-discovery<br />
router-discovery<br />
static-routes<br />
arp-cache-timeout<br />
default-tcp-ttl<br />
tcp-keepalive-garbage<br />
nis-servers<br />
vendor-encapsulated-options<br />
netbios-dd-server<br />
netbios-scope<br />
x-display-manager<br />
dhcp-lease-time<br />
dhcp-message-type<br />
dhcp-parameter-request-list<br />
dhcp-max-message-size<br />
dhcp-rebinding-time<br />
time-offset<br />
time-servers<br />
domain-name-servers<br />
cookie-servers<br />
impress-servers<br />
host-name<br />
merit-dump<br />
swap-server<br />
extensions-path<br />
non-local-source-routing<br />
max-dgram-reassembly<br />
path-mtu-aging-timeout<br />
interface-mtu<br />
broadcast-address<br />
mask-supplier<br />
router-solicitation-address<br />
trailer-encapsulation<br />
ieee802-3-encapsulation<br />
tcp-keepalive-interval<br />
nis-domain<br />
ntp-servers<br />
netbios-name-servers<br />
netbios-node-type<br />
font-servers<br />
dhcp-requested-address<br />
dhcp-option-overload<br />
dhcp-server-identifier<br />
dhcp-message<br />
dhcp-renewal-time<br />
dhcp-class-identifier
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 229<br />
dhcp-client-identifier<br />
option-63<br />
nisplus-servers<br />
bootfile-name<br />
smtp-server<br />
nntp-server<br />
finger-server<br />
streettalk-server<br />
user-class<br />
option-79<br />
option-81<br />
option-83<br />
nds-servers<br />
nds-context<br />
option-89<br />
...(more options down to)<br />
option-115<br />
auto-configure<br />
option-117<br />
...(more options down to)<br />
option-254<br />
option-end<br />
option-62<br />
nisplus-domain<br />
tftp-server-name<br />
mobile-ip-home-agent<br />
pop-server<br />
www-server<br />
irc-server<br />
streettalk-directory<br />
-assistance-server<br />
option-78<br />
option-80<br />
option-82<br />
option-84<br />
nds-tree-name<br />
option-88<br />
See also DHCPSERVER SUBNET ADD OPTION<br />
For information on RFC 2132, see http://www.ietf.org/rfc/rfc2132.txt<br />
DHCPSERVER LIST SUBNETS<br />
Syntax DHCPSERVER LIST SUBNETS<br />
Description This command lists the following information about existing DHCP server subnets:<br />
• subnet number<br />
• subnet name<br />
• subnet IP address<br />
• subnet netmask<br />
• default lease time (in seconds)<br />
• maximum lease time (in seconds)<br />
• whether the host is a DNS server (true or false)<br />
Example<br />
--> dhcpserver list subnets<br />
DHCP Server subnets:<br />
Default Max Host is<br />
ID | IP Address | Netmask | Lease time | Lease time | DNS svr<br />
---|----------------|---------------|------------|------------|--------<br />
1 | 192.168.102.0 | 255.255.255.0 | 43200 | 86400 | false<br />
-----------------------------------------------------------------------<br />
See also DHCPSERVER SHOW SUBNET
230 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPSERVER SET ALLOWUNKNOWNCLIENTS<br />
Syntax DHCPSERVER SET ALLOWUNKOWNCLIENTS {ENABLE|DISABLE}<br />
Description This command enables/disables the dynamic assignment of addresses to unknown<br />
clients.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Allows IP addresses to be dynamically<br />
assigned to unknown clients.<br />
Does not allow IP addresses to be<br />
dynamically assigned to unknown clients.<br />
enable<br />
Example --> dhcpserver set allowunknownclients disable<br />
See also DHCPCLIENT SET INTERFACECONFIG CLIENTID<br />
DHCPSERVER SET BOOTP<br />
Syntax DHCPSERVER SET BOOTP {ENABLE|DISABLE}<br />
Description This command determines whether or not DHCP server can respond to BOOTP<br />
requests.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
DHCP server responds to BOOTP queries.<br />
DHCP server does not respond to BOOTP<br />
queries.<br />
enable<br />
Example --> dhcpserver set bootp disable<br />
DHCPSERVER SET DEFAULTLEASETIME<br />
Syntax DHCPSERVER SET DEFAULTLEASETIME <br />
Description This command sets the global default lease time for DHCP server. To retrieve the<br />
current DEFAULTLEASETIME value, use the DHCPSERVER SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 231<br />
Option Description Default Value<br />
defaultleasetime<br />
The default time (in seconds) that is<br />
assigned to a lease if the client requesting<br />
the lease does not ask for a specific expiry<br />
time.<br />
43200<br />
Example --> dhcpserver set defaultleasetime 50000<br />
See also DHCPSERVER SET SUBNET MAXLEASETIME<br />
DHCPSERVER SET FIXEDHOST IPADDRESS<br />
Syntax DHCPSERVER SET FIXEDHOST IPADDRESS <br />
Description This command sets the IP address that will be allocated to a DHCP client by the<br />
fixed host mapping. To retrieve the current FIXEDHOST IPADDRESS values, use<br />
the DHCPSERVER LIST FIXEDHOST command.<br />
<br />
Note: Itʹs not valid to create a fixed host mapping with an IP address that is<br />
already within a configured, dynamic IP range on a subnet. The reverse is also<br />
forbidden; itʹs not possible to add addresses into a dynamic IP range that are<br />
already configured as fixed host addresses.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
hostname<br />
ipaddress<br />
A name that identifies an existing fixedhost. To<br />
display fixedhost names, use the<br />
DHCPSERVER LIST FIXEDHOSTS<br />
command.<br />
The IP address that is assigned to a DHCP client<br />
based on the client’s MAC address, displayed in<br />
the IPv4 format (e.g. 192.168.102.3)<br />
N/A<br />
N/A<br />
Example --> dhcpserver set fixedhost myhost ipaddress 192.168.219.2<br />
See also DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER SET FIXEDHOST MACADDRESS<br />
DHCPSERVER SET FIXEDHOST MACADDRESS<br />
Syntax DHCPSERVER SET FIXEDHOST MACADDRESS <br />
Description This command sets the MAC address for an existing fixed host mapping. To<br />
retrieve the current FIXEDHOST MACADDRESS values, use the DHCPSERVER
232 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
LIST FIXEDHOST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
hostname<br />
mac address<br />
A name that identifies an existing fixedhost. To<br />
display fixedhost names, use the<br />
DHCPSERVER LIST FIXEDHOSTS<br />
command.<br />
A MAC address displayed in the following<br />
format:<br />
##:##:##:##:##:##<br />
N/A<br />
N/A<br />
Example --> dhcpserver set fixedhost myhost macaddress<br />
00:20:2b:01:02:03<br />
See also DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER SET FIXEDHOST IPADDRESS<br />
DHCPSERVER SET FIXEDHOST MAXLEASETIME<br />
Syntax DHCPSERVER SET FIXEDHOST MAXLEASETIME <br />
Description This command sets the maximum lease time for an existing fixed host mapping.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
maxleasetime<br />
The maximum time (in seconds) that is<br />
assigned to a lease if the client requesting<br />
the lease does not ask for a specific expiry<br />
time.<br />
86400<br />
Example --> dhcpserver set fixedhost myhost maxleasetime 90000<br />
See also DHCPSERVER LIST FIXEDHOST<br />
DHCPSERVER SET MAXLEASETIME<br />
Syntax DHCPSERVER SET MAXLEASETIME <br />
Description This command sets the global maximum lease time for DHCP server. To retrieve the<br />
current MAXLEASETIME value, use the DHCPSERVER SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 233<br />
Option Description Default Value<br />
maxleasetime<br />
The maximum time (in seconds) that is<br />
assigned to a lease if the client requesting<br />
the lease does not ask for a specific expiry<br />
time.<br />
86400<br />
Example --> dhcpserver set maxleasetime 90000<br />
See also DHCPSERVER SET DEFAULTLEASETIME<br />
DHCPSERVER SET SUBNET DEFAULTLEASETIME<br />
Syntax DHCPSERVER SET SUBNET {|} DEFAULTLEASETIME<br />
<br />
Description This command sets the default lease time for an existing subnet. This command<br />
setting overrides the global default lease time setting for this particular subnet. To<br />
retrieve the current SUBNET DEFAULTLEASETIME value, use the DHCPSERVER<br />
SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
defaultleasetime<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
The default time (in seconds) that a subnet<br />
assigns to a lease if the client requesting the<br />
lease does not ask for a specific expiry time.<br />
N/A<br />
N/A<br />
43200<br />
Example --> dhcpserver set subnet sub1 defaultleasetime 30000<br />
See also DHCPSERVER SHOW SUBNET<br />
DHCPSERVER SET SUBNET<br />
HOSTISDEFAULTGATEWAY<br />
Syntax DHCPSERVER SET SUBNET {|} HOSTISDEFAULTGATEWAY<br />
{ENABLED | DISABLED}<br />
Description This command tells the DHCP server to give out its own interface IP address (ie the<br />
IP address on the interface via which the DHCP lease is allocated to the client) as<br />
the default gateway address. To retrieve the current settings, use the DHCPSERVER
234 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
Allows DHCP server to give out its own<br />
interface IP address as the default gateway<br />
address.<br />
N/A<br />
N/A<br />
disabled<br />
DHCPSERVER SET SUBNET HOSTISDNSSERVER<br />
Syntax DHCPSERVER SET SUBNET {|} HOSTISDNSSERVER {ENABLED |<br />
DISABLED}<br />
Description This command tells the DHCP server to give out its own interface IP address (ie the<br />
IP address on the interface via which the DHCP lease is allocated to the client) as<br />
the DNS server address. This is useful when combined with DNS Relay. To retrieve<br />
the current settings, use the DHCPSERVER SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
Number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
dhcpserver list subnets command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
dhcpserver list subnets command.<br />
Allows DHCP server to give out its own<br />
interface IP address as the DNS server<br />
address.<br />
Disallows DHCP server from giving out its<br />
own interface IP address as the DNS server<br />
address.<br />
N/A<br />
N/A<br />
disabled<br />
Example - -> dhcpserver set subnet sub1 hostisdnsserver enabled
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 235<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SET SUBNET MAXLEASETIME<br />
Syntax DHCPSERVER SET SUBNET {|} MAXLEASETIME <br />
Description This command sets the maximum lease time for an existing subnet. This command<br />
setting overrides the global maximum lease time setting for this particular subnet.<br />
To retrieve the current settings, use the DHCPSERVER SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
Number<br />
maxleasetime<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
The maximum time (in seconds) that a<br />
subnet assigns to a lease if the client<br />
requesting the lease does not ask for a<br />
specific expiry time.<br />
N/A<br />
N/A<br />
86400<br />
Example --> dhcpserver set subnet sub1 maxleasetime 70000<br />
See also DHCPSERVER SHOW SUBNET<br />
DHCPSERVER SET SUBNET SUBNET<br />
Syntax DHCPSERVER SET SUBNET {|} SUBNET <br />
Description This command allows you to change the IP address and netmask that define the IP<br />
subnet used by an existing DHCP server subnet.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A
236 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
ip address<br />
netmask<br />
The new IP address for the subnet,<br />
displayed in the IPv4 format (e.g.<br />
192.168.102.3)<br />
The new netmask for the subnet, for<br />
example:<br />
255.255.255.0<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpserver set subnet sub1 subnet 239.252.197.0 255.255.255.0<br />
See also DHCPSERVER SUBNET ADD IPRANGES<br />
DHCPSERVER SUBNETS CLEAR IPRANGES<br />
DHCPSERVER SHOW<br />
Syntax DHCPSERVER SHOW<br />
Description This command displays the following global configuration information about the<br />
DHCP server:<br />
• status of the server (enabled/disabled)<br />
• global default lease time<br />
• global maximum lease time<br />
• allow bootp requests setting (enable/disable)<br />
• allow unknown clients setting (enable/disable)<br />
Example --> dhcpserver show<br />
Global DHCP Server Configuration:<br />
Status: ENABLED<br />
Default lease time: 43200 seconds<br />
Max. lease time: 86400 seconds<br />
Allow BOOTP requests: true<br />
Allow unknown clients: true<br />
See also DHCPSERVER SHOW SUBNET<br />
DHCPSERVER SHOW SUBNET<br />
Syntax DHCPSERVER SHOW SUBNET {|}<br />
Description This command displays the following information about an existing subnet:<br />
• subnet name<br />
• subnet IP address<br />
• subnet netmask<br />
• subnet maximum lease time
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 237<br />
• subnet default lease time<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A<br />
Example --> dhcpserver show subnet sub1<br />
DHCP Server Subnet: sub1<br />
Subnet: 192.168.103.0<br />
Netmask: 255.255.255.0<br />
Max. lease time: 70000 seconds<br />
Default lease time: 30000 seconds<br />
See also DHCPSERVER SHOW<br />
DHCPSERVER SUBNET ADD IPRANGE<br />
Syntax DHCPSERVER SUBNET {|} ADD IPRANGE <br />
Description This command adds a pool of IP addresses to an existing subnet. The DHCP server<br />
can allocate IP addresses from this pool to clients on request.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
startaddr<br />
endaddr<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
The first IP address in the pool of addresses.<br />
The IP address is displayed in the IPv4<br />
format (e.g. 192.168.102.3)<br />
The last IP address in the pool of addresses.<br />
The IP address is displayed in the IPv4<br />
format (e.g. 192.168.102.3)<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example
238 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
--> dhcpserver subnet sub1 add iprange 239.252.197.0 239.252.197.107<br />
See also DHCPSERVER ADD SUBNET<br />
DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SUBNET LIST IPRANGES<br />
DHCPSERVER SUBNET ADD OPTION<br />
Syntax DHCPSERVER SUBNET {|} ADD OPTION <br />
Description This command allows you to configure the DHCP server to send options detailed in<br />
RFC2132. To display a list of available options, use the command DHCPSERVER<br />
LIST OPTIONS.<br />
The heading of each option in the list contains the option identifier and the required<br />
value (in italics) for that specific option. The following is an extract from the option<br />
list, given as an example of the nature of the options:<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
identifier<br />
value<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A text string that identifies a DHCP server<br />
configuration option.<br />
The value associated with the option<br />
identifier.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 add option auto-configure 1<br />
See also DHCPCLIENT SET INTERFACECONFIG AUTOIP ENABLED|DISABLED<br />
For information on RFC 2132, see http://www.ietf.org/rfc/rfc2132.txt<br />
DHCPSERVER SUBNET CLEAR IPRANGES<br />
Syntax DHCPSERVER SUBNET {|} CLEAR IPRANGES<br />
Description This command deletes all of the IP ranges set for an existing subnet.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 239<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 clear ipranges<br />
See also DHCPSERVER SUBNET LIST IPRANGES<br />
DHCPSERVER SUBNET DELETE IPRANGE<br />
DHCPSERVER SUBNET CLEAR OPTIONS<br />
Syntax DHCPSERVER SUBNET {|} CLEAR OPTIONS<br />
Description This command deletes the options set for an existing subnet.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 clear options<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SUBNET DELETE OPTION<br />
DHCPSERVER SUBNET DELETE IPRANGE<br />
Syntax DHCPSERVER SUBNET {|} DELETE IPRANGE <br />
Description This command deletes a single IP range from an existing subnet.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
240 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
name<br />
number<br />
range-id<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an IP range. To list<br />
the existing range-ids for a subnet, use the<br />
DHCPSERVER SUBNET LIST IPRANGES<br />
command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 delete iprange 1<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SUBNET LIST IPRANGES<br />
DHCPSERVER SUBNET DELETE OPTION<br />
Syntax DHCPSERVER SUBNET {|} DELETE OPTION <br />
Description This command deletes a single option that was added using the DHCPSERVER<br />
SUBNET ADD OPTION command. Once deleted, the option will no longer be given<br />
out by the DHCP server.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
option number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing option.<br />
To list all existing options, use the<br />
DHCPSERVER SUBNET LIST OPTIONS<br />
command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 delete option 2<br />
See also DHCPSERVER CLEAR SUBNETS<br />
DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SUBNET LIST OPTIONS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 241<br />
DHCPSERVER SUBNET LIST IPRANGES<br />
Syntax DHCPSERVER SUBNET {|} LIST IPRANGES<br />
Description This command lists the IP range(s) for an existing subnet that have been added<br />
using the DHCPSERVER ADD SUBNET command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
N/A<br />
Example --> dhcpserver subnet sub1 list ipranges<br />
IP Ranges for subnet: sub1<br />
ID | Start Address | End Address<br />
-----|------------------|------------------<br />
1 | 192.168.102.0 | 192.168.102.100<br />
2 | 192.168.102.200 | 192.168.102.300<br />
-------------------------------------------<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER SUBNET LIST OPTIONS<br />
Syntax DHCPSERVER SUBNET {|} LIST OPTIONS<br />
Description This command lists the options for an existing subnet that has been added using the<br />
DHCPSERVER ADD SUBNET command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing subnet.<br />
To display subnet names, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A
242 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
number<br />
A number that identifies an existing subnet.<br />
To display subnet numbers, use the<br />
DHCPSERVER LIST SUBNETS command.<br />
N/A<br />
Example --> dhcpserver subnet sub1 list options<br />
Options for subnet: sub1<br />
ID | Identifier | Value<br />
-----|------------------|------------------<br />
1 | ip-forwarding | false<br />
2 | subnet-mask | 255.255.255.0<br />
-------------------------------------------<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPSERVER UPDATE<br />
Syntax DHCPSERVER UPDATE<br />
Description This command updates the DHCP server configuration. Changes made to the server<br />
configuration will not take effect until this command has been entered.<br />
Example --> dhcpserver update<br />
dhcpserver: Reset request acknowledged. Reset imminent.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 243<br />
DHCP Client Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the DHCP Client<br />
module.<br />
DHCP client CLI commands<br />
The table below lists the dhcpclient commands provided by the CLI:<br />
Command<br />
DHCPCLIENT ADD INTERFACECONFIG<br />
DHCPCLIENT CLEAR INTERFACECONFIGS<br />
DHCPCLIENT DELETE INTERFACECONFIG<br />
DHCPCLIENT INTERFACECONFIG ADD REQUESTED OPTION<br />
DHCPCLIENT INTERFACECONFIG ADD REQUIRED OPTION<br />
DHCPCLIENT INTERFACECONFIG ADD SENT OPTION<br />
DHCPCLIENT INTERFACECONFIG CLEAR REQUESTED OPTIONS<br />
DHCPCLIENT INTERFACECONFIG CLEAR SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG DELETE REQUESTED OPTIONS<br />
DHCPCLIENT INTERFACECONFIG DELETE SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG LIST REQUESTED OPTIONS<br />
DHCPCLIENT INTERFACECONFIG LIST SENT OPTIONS<br />
DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET BACKOFF<br />
DHCPCLIENT SET INTERFACECONFIG AUTOIP<br />
DHCPCLIENT SET INTERFACECONFIG CLIENTID<br />
DHCPCLIENT SET INTERFACECONFIG DEFAULTROUTE<br />
DHCPCLIENT SET INTERFACECONFIG DHCPINFORM<br />
DHCPCLIENT SET INTERFACECONFIG DHCPSERVERPOOLSIZE<br />
DHCPCLIENT SET INTERFACECONFIG DHCPSERVERINTERFACE<br />
DHCPCLIENT SET INTERFACECONFIG GIVEDNSTOCLIENT<br />
DHCPCLIENT SET INTERFACECONFIG GIVEDNSTORELAY<br />
DHCPCLIENT SET INTERFACECONFIG INTERFACE<br />
DHCPCLIENT SET INTERFACECONFIG NOCLIENTID<br />
DHCPCLIENT SET INTERFACECONFIG REQUESTEDLEASETIME<br />
DHCPCLIENT SET INTERFACECONFIG SERVER<br />
DHCPCLIENT SET REBOOT
244 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPCLIENT SET RETRY<br />
DHCPCLIENT SHOW<br />
DHCPCLIENT UPDATE<br />
DHCPCLIENT ADD INTERFACECONFIG<br />
Syntax DHCPCLIENT ADD INTERFACECONFIG <br />
Description This command configures DHCP client parameters for negotiation over an existing<br />
IP interface. This command can only be applied to IP interfaces have DHCP enabled<br />
(see IP SET INTERFACE DHCP command).<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
ipinterface<br />
An arbitrary name that identifies the name<br />
via which the DHCP config on the<br />
corresponding IP interface will be<br />
identified. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
An IP address or a name that identifies an<br />
existing IP interface. The interface must<br />
have DHCP enabled. To display interface<br />
names, use the IP LIST INTERFACES<br />
command.<br />
N/A<br />
N/A<br />
Example --> dhcpclient add interfaceconfig config1 ip1<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
IP LIST INTERFACES<br />
IP SET INTERFACE DHCP<br />
DHCPCLIENT CLEAR INTERFACECONFIGS<br />
Syntax DHCPCLIENT CLEAR INTERFACECONFIGS<br />
Description This command deletes all existing DHCP client interface configurations.<br />
Example --> dhcpclient clear interfaceconfigs<br />
See also DHCPCLIENT LIST INTERFACECONFIGS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 245<br />
DHCPCLIENT DELETE INTERFACECONFIG<br />
Syntax DHCPCLIENT DELETE INTERFACECONFIG {|}<br />
Description This command deletes a single DHCP client interface configuration.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
N/A<br />
Example --> dhcpclient delete interfaceconfig config1<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG ADD REQUESTED<br />
OPTION<br />
Syntax DHCPCLIENT INTERFACECONFIG {|} ADD REQUESTED OPTION<br />
<br />
Description This command tells the DHCP client on a specific interface to request a specified<br />
option from a DHCP server. The requested option is not compulsory - if the option<br />
is not included in a lease offered by DHCP server, the DHCP client will still accept<br />
the offer.<br />
Options are detailed in RFC 2132.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A
246 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
number<br />
option<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A text string that identifies a DHCP server<br />
configuration option.<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient interfaceconfig client1 add requested option irc-server<br />
See also DHCPCLIENT INTERFACECONFIG ADD REQUIRED OPTION<br />
For information on RFC 2132, see http://www.ietf.org/rfc/rfc2132.txt<br />
DHCPCLIENT INTERFACECONFIG ADD REQUIRED<br />
OPTION<br />
Syntax DHCPCLIENT INTERFACECONFIG {|} ADD REQUIRED OPTION<br />
<br />
Description This command tells the DHCP client on a particular interface that it requires a<br />
specified option from DHCP server. The required option is compulsory - if the<br />
option is not included in a lease offered by DHCP server, the DHCP client will<br />
ignore the offer.<br />
Options are detailed in RFC 2132.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
option<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A text string that identifies a DHCP server<br />
configuration option.<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient interfaceconfig client1 add required option domain-name<br />
See also DHCPCLIENT INTERFACECONFIG ADD REQUESTED OPTIONS<br />
DHCPCLIENT INTERFACECONFIG LIST REQUESTED OPTIONS<br />
For information on RFC 2132, see http://www.ietf.org/rfc/rfc2132.txt
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 247<br />
DHCPCLIENT INTERFACECONFIG ADD SENT<br />
OPTION<br />
Syntax DHCPCLIENT INTERFACECONFIG {|} ADD SENT OPTION<br />
<br />
Description This command tells the DHCP client on a particular interface to send a value for the<br />
given DHCP configuration option to a DHCP server. The DHCP server’s response<br />
depends on the type of option being sent out<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
option<br />
A name that identifies an existing DHCP client<br />
interface. To display client interface names, use<br />
the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A text string that identifies a DHCP server<br />
configuration option.<br />
N/A<br />
N/A<br />
N/A<br />
value The value associated with the option identifier. N/A<br />
Example To tell the DHCP client to send the DHCP host-name option to the DHCP server<br />
with the value “vancouver” use the following command:<br />
--> dhcpclient interfaceconfig client1 add sent option host-name '"vancouver"'<br />
<br />
Note: For options with string-type values associated with them, the option<br />
value must be in double-quotes (ʺ). Also, the entire string including the double<br />
quotes must be inside single quotes (ʹ) to ensure that the CLI treats the double<br />
quotes literally.<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG LIST SENT OPTIONS<br />
for information on RFC 2132, see http://www.ietf.org/rfc/rfc2132.txt<br />
DHCPCLIENT INTERFACECONFIG CLEAR<br />
REQUESTED OPTIONS<br />
Syntax DHCPCLIENT INTERFACECONFIG {|}CLEAR REQUESTED
248 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
OPTIONS<br />
Description This command deletes all options that were previously added to an interfaceconfig<br />
using the DHCPCLIENT INTERFACECONFIG ADD REQUESTED/REQUIRED<br />
OPTION commands<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
N/A<br />
Example --> dhcpclient interfaceconfig client1 clear requested options<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG ADD REQUESTED OPTION<br />
DHCPCLIENT INTERFACECONFIG ADD REQUIRED OPTION<br />
DHCPCLIENT INTERFACECONFIG DELETE REQUESTED OPTION<br />
DHCPCLIENT INTERFACECONFIG DELETE REQUIRED OPTION<br />
DHCPCLIENT INTERFACECONFIG CLEAR SENT<br />
OPTIONS<br />
Syntax DHCPCLIENT INTERFACECONFIG {|}CLEAR SENT OPTIONS<br />
Description This command deletes all options that were previously added to an interfaceconfig<br />
using the DHCPCLIENT INTERFACECONFIG ADD SENT OPTION commands<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 249<br />
number<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
Example --> dhcpclient interfaceconfig client1 clear sent options<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG LIST SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG ADD SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG DELETE SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG DELETE<br />
REQUESTED OPTION<br />
Syntax DHCPCLIENT INTERFACECONFIG {|}DELETE REQUESTED<br />
OPTION <br />
Description This command deletes a single option that was previously added to an<br />
interfaceconfig using the DHCPCLIENT INTERFACECONFIG ADD OPTION<br />
REQUESTED/REQUIRED commands.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
option number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an option that is<br />
requested/required from the DHCP server<br />
by the DHCP client. To display option<br />
numbers, use the DHCPCLIENT<br />
INTERFACECONFIG LIST OPTIONS<br />
command.<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient interfaceconfig client1 delete requested option 1<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG ADD REQUESTED OPTION<br />
DHCPCLIENT INTERFACECONFIG ADD REQUIRED OPTION
250 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPCLIENT INTERFACECONFIG DELETE SENT<br />
OPTION<br />
Syntax DHCPCLIENT INTERFACECONFIG {|}DELETE SENT OPTION<br />
<br />
Description This command deletes a single option that was previously added to an<br />
interfaceconfig using the DHCPCLIENT INTERFACECONFIG ADD SENT<br />
OPTION command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
option number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an option that is<br />
requested/required from the DHCP server<br />
by the DHCP client. To display option<br />
numbers, use the DHCPCLIENT<br />
INTERFACECONFIG LIST SENT OPTIONS<br />
command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> dhcpclient interfaceconfig client1 delete sent option 1<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT INTERFACECONFIG LIST SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG ADD SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG LIST REQUESTED<br />
OPTIONS<br />
Syntax DHCPCLIENT INTERFACECONFIG {|} LIST REQUESTED<br />
OPTIONS<br />
Description This command lists the options that the DHCP client requests and/or requires from<br />
the DHCP server. These options were set using the DHCPCLIENT<br />
INTERFACECONFIG ADD REQUESTED/REQUIRED OPTION commands.<br />
The following information are displayed:<br />
• Option identification number
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 251<br />
• Option identifier (name)<br />
• Requirement status - true for options that were added using the DHCPCLIENT<br />
INTERFACECONFIG ADD REQUIRED OPTION command, false for options<br />
added using the DHCPCLIENT INTERFACECONFIG ADD REQUESTED<br />
OPTION command.<br />
Options and their values are detailed in RFC2132.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient interfaceconfig client1 list requested options<br />
DHCP client requested options: client1<br />
ID | Identifier | Is option required?<br />
-----|--------------------|---------------------<br />
1 | host-name | false<br />
2 | domain-name | true<br />
------------------------------------------------<br />
See also DHCPCLIENT INTERFACECONFIG ADD REQUESTED OPTION<br />
DHCPCLIENT INTERFACECONFIG ADD REQUIRED OPTION<br />
DHCPSERVER SUBNET ADD OPTION<br />
DHCPCLIENT INTERFACECONFIG LIST SENT<br />
OPTIONS<br />
Syntax DHCPCLIENT INTERFACECONFIG {|} LIST SENT OPTIONS<br />
Description This command displays a list of the options that the DHCP client sends to the<br />
DHCP server. These options were set using the DHCPCLIENT<br />
INTERFACECONFIG ADD SENT OPTION command.<br />
The following information are displayed:<br />
• Option identification number
252 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
• Option identifier (name)<br />
• Suggested value<br />
Options and their values are detailed in RFC2132.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient interfaceconfig client1 list sent options<br />
DHCP client requested options: client1<br />
ID | Identifier | Suggested value<br />
-----|--------------------|---------------------<br />
1 | host-name | vancouver<br />
2 | domain-name | alliedtelesyn<br />
------------------------------------------------<br />
See also DHCPCLIENT INTERFACECONFIG ADD SENT OPTIONS<br />
DHCPCLIENT INTERFACECONFIG CLEAR SENT OPTIONS<br />
DHCPSERVER SUBNET ADD OPTION<br />
DHCPCLIENT LIST INTERFACECONFIGS<br />
Syntax DHCPCLIENT LIST INTERFACECONFIGS<br />
Description This command lists the following information about existing DHCP client<br />
interfaces:<br />
• interface identification number<br />
• interface name<br />
• IP interface configured by the client interface<br />
• requested lease time (in seconds)<br />
• client identifier (if set)<br />
• Status of IP address auto-configuration (true or false)<br />
Example<br />
--> dhcpclient list interfaceconfigs<br />
DHCP Client Declarations:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 253<br />
Requested<br />
ID | Name | Interface | Lease Time | Client ID | AutoIP<br />
-----|------------|------------|------------|-------------------|--------<br />
1 | client1 | ip1 | 9000 | 00:11:22:33:44:5a | true<br />
See also DHCPCLIENT SHOW<br />
DHCPCLIENT SET INTERFACECONFIG REQUESTEDLEASETIME<br />
DHCPCLIENT SET INTERFACECONFIG CLIENTID<br />
DHCPCLIENT SET INTERFACECONFIG AUTOIP<br />
DHCPCLIENT SET BACKOFF<br />
Syntax DHCPCLIENT SET BACKOFF <br />
Description This command sets the global maximum time (in seconds) that a DHCP client<br />
interface will `back offʹ between issuing individual DHCP requests. This prevents<br />
many clients trying to configure themselves at the same time, and sending too many<br />
requests at once.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
backofftime<br />
The maximum number of seconds that the<br />
DHCP client can pause for between<br />
unsuccessful DHCP negotiations.<br />
120<br />
Example --> dhcpclient set backoff 200<br />
See also DHCPCLIENT SHOW<br />
DHCPCLIENT SET INTERFACECONFIG AUTOIP<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} AUTOIP {ENABLED |<br />
DISABLED}<br />
Description This command enables/disables IP address auto-configuration (Auto-IP).<br />
Auto-IP automatically configures an IP address when a DHCP client fails to contact<br />
a DHCP server and cannot obtain a lease. An IP address in the 169.254.0.0 subnet is<br />
automatically created, and ARP requests are issued for the suggested IP address.<br />
The address is abandoned if it already exists on the network or if any other host on<br />
the network issues an ARP probe for that IP address.<br />
Once an IP address has been automatically configured, the DHCP client continues to<br />
check whether or not it can contact a DHCP server. If the client can contact a DHCP<br />
server and obtain a legitimate lease, the legitimate lease will supersede the autoconfigured<br />
IP address.
254 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
To retrieve the current settings, use the DHCPCLIENT SHOW command.<br />
<br />
Note: Even if Auto-IP has been enabled using this command, IP address autoconfiguration<br />
will not be carried out if a DHCP server on the same network<br />
does not allow it. See the DHCPSERVER SUBNET ADD OPTION command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
Enables Auto-IP on a specified dhcp client.<br />
Disables Auto-IP on a specified dhcp client.<br />
N/A<br />
N/A<br />
enabled<br />
Example --> dhcpclient set interfaceconfig mycfg autoip enabled<br />
See also DHCPSERVER SUBNET ADD OPTION (see the specific example given for this<br />
command)<br />
For further information on the RFC standard for DHCP IP address autoconfiguration,<br />
see http://www.ietf.org/rfc/rfc2563.txt.<br />
DHCPCLIENT SET INTERFACECONFIG CLIENTID<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} CLIENTID <br />
Description This command sets a unique client identifier that the DHCP server uses to identify<br />
the client.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 255<br />
number<br />
Client id<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A unique identifier that DHCP server can<br />
use to identify the client. For Microsoft<br />
DHCP servers, the client ID should be the<br />
MAC address of the system that DHCP is<br />
running on. For other DHCP servers, the<br />
client ID can be a MAC address or a text<br />
string such as the hostname.<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient set interfaceconfig client1 clientid 00:11.22.33.44.5a<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG<br />
DEFAULTROUTE<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} DEFAULTROUTE<br />
{ENABLED|DISABLED}<br />
Description This command enables/disables whether the DHCP client makes use of default<br />
gateway information received from a DHCP server. If no DHCP interfaceconfigs<br />
have been added to the system, by default the DHCP client will use default gateway<br />
information received from a DHCP server.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
DHCP client uses default gateway<br />
information it receives from DHCP server.<br />
DHCP client does not use default gateway<br />
information it receives from DHCP server.<br />
N/A<br />
N/A<br />
enabled<br />
Example<br />
--> dhcpclient set interfaceconfig client1 defaultroute disabled
256 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG<br />
DHCPINFORM<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} DHCPINFORM<br />
{ENABLED|DISABLED}<br />
Description This command enables/disables whether a DHCP client uses the dhcpinform message<br />
type. This DHCP message type is used whenever a client has obtained an IP address<br />
or subnet mask (for example, the address has been manually configured or obtained<br />
through PPP/IPCP), but wishes to obtain extra configuration parameters (such as<br />
NS servers or default gateway) from a DHCP server.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
Enables the dhcpinform message type. IP<br />
address and subnet mask will not be<br />
negotiated if this mode is selected.<br />
Disables the dhcpinform message type<br />
N/A<br />
N/A<br />
disabled<br />
Example<br />
--> dhcpclient set interfaceconfig client1 dhcpinform disabled<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG SERVER<br />
DHCPCLIENT SET INTERFACECONFIG<br />
DHCPSERVERPOOLSIZE<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|}<br />
DHCPSERVERPOOLSIZE <br />
Description This command tells a DHCP client to configure a DHCP server on the LAN if the
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 257<br />
given address pool size is set to a number greater than 0. The LAN DHCP server is<br />
configured using parameters received by a DHCP client interface on the WAN.<br />
Information such as DNS server addresses can then be distributed to LAN clients.<br />
The new DHCP server uses its lan IP address as the address to give out as the<br />
default gateway address.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
pool size<br />
A name that identifies an existing DHCP client<br />
interface. To display client interface names, use<br />
the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
A number that identifies an existing DHCP client<br />
interface. To display client interface numbers,<br />
use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
The number of DHCP client addresses in a pool.<br />
The first address in the pool is the address<br />
immediately after the LAN DHCP address. For<br />
example, if the LAN DHCP address is<br />
192.168.102.3, the first address in the pool will be<br />
192.168.102.4.<br />
NA<br />
NA<br />
NA<br />
Example<br />
--> dhcpclient set interfaceconfig client1 dhcpserverpoolsize 20<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG<br />
DHCPSERVERINTERFACE<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|}<br />
DHCPSERVERINTERFACE <br />
Description This command allows the user to specify an existing IP interface on which the<br />
automatically configured DHCP server can be created. If the interface name does<br />
not correspond with an existing IP interface, the DHCP server will be placed on the<br />
first LAN interface that it finds.<br />
<br />
Note: When the DHCP server is automatically configured, the<br />
DHCPSERVERPOOLSIZE is set to 20 hosts.
258 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
interface name<br />
A name that identifies an existing DHCP client<br />
interface. To display client interface names, use<br />
the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
A number that identifies an existing DHCP client<br />
interface. To display client interface numbers,<br />
use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command<br />
The name that identifies an existing IP interface.<br />
To display IP interface names, use the IP LIST<br />
INTERFACES command<br />
NA<br />
NA<br />
NA<br />
Example<br />
--> dhcpclient set interfaceconfig client1 dhcpserverinterface ip2<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG DHCPSERVERPOOLSIZE<br />
DHCPCLIENT SET INTERFACECONFIG<br />
GIVEDNSTOCLIENT<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} GIVEDNSTOCLIENT<br />
{ENABLED|DISABLED}<br />
Description This command enables/disables whether a DHCP client passes received DNS server<br />
addresses to the DNS client. If no DHCP interfaceconfigs have been added to the<br />
system, by default the DHCP client will not pass DNS server addresses to the DNS<br />
client.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 259<br />
number<br />
ENABLED<br />
DISABLED<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
DHCP client passes learnt DNS server<br />
addresses to the DNS client.<br />
DHCP client does not pass learnt DNS<br />
server addresses to the DNS client.<br />
N/A<br />
disabled<br />
Example<br />
--> dhcpclient set interfaceconfig client1 givednstoclient disabled<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG<br />
GIVEDNSTORELAY<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} GIVEDNSTORELAY<br />
{ENABLED|DISABLED}<br />
Description This command enables/disables whether a DHCP client passes received DNS server<br />
addresses to the DNS relay. If no DHCP interfaceconfigs have been added to the<br />
system, by default the DHCP client will pass DNS server addresses to the DNS<br />
relay.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW<br />
INTERFACECONFIG command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
DHCP client passes learnt DNS server<br />
addresses to the DNS relay.<br />
DHCP client does not pass learnt DNS<br />
server addresses to the DNS relay.<br />
N/A<br />
N/A<br />
enabled<br />
Example<br />
--> dhcpclient set interfaceconfig client1 givednstorelay disabled
260 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPCLIENT SET INTERFACECONFIG INTERFACE<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} INTERFACE<br />
<br />
Description This command sets the IP interface that will have its configuration set by the DHCP<br />
client interface. The client interface can only set the IP configuration if the IP<br />
interface has DHCP enabled, using the IP SET INTERFACE DHCP command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ipinterface<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A name that identifies an existing IP<br />
interface. The interface must have DHCP<br />
enabled. To display interface names, use the<br />
IP LIST INTERFACES command.<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient set interfaceconfig client1 interface ip2<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
IP LIST INTERFACES<br />
IP SET INTERFACE DHCP<br />
DHCPCLIENT SET INTERFACECONFIG NOCLIENTID<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} NOCLIENTID<br />
Description This command deletes a client identifier from a DHCP client.<br />
The DHCP server must have ʹallowunknownclientsʹ enabled in order to work with<br />
DHCP clients that are not specifically named in DHCP server configuration or its<br />
lease database.<br />
Options The following table gives the range of values for each option which can be specifie<br />
d with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 261<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
N/A<br />
N/A<br />
Example<br />
--> dhcpclient set interfaceconfig client1 noclientid<br />
See also DHCPCLIENT SET INTERFACECONFIG CLIENTID<br />
DHCPSERVER SET ALLOWUNKNOWNCLIENTS<br />
DHCPCLIENT SET INTERFACECONFIG<br />
REQUESTEDLEASETIME<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|}<br />
REQUESTEDLEASETIME <br />
Description The DHCP client requests a specific lease time from the DHCP server for the<br />
allocated IP addresses. This command determines the length of lease time<br />
requested. The DHCP server will `capʹ a requested lease time if it is too large.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
requested lease<br />
time<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the DHCPCLIENT LIST<br />
INTERFACECONFIGS command.<br />
The lease time (in seconds) that a DHCP<br />
client requests from the DHCP server.<br />
N/A<br />
N/A<br />
86400<br />
Example<br />
--> dhcpclient set interfaceconfig client1 requestedleasetime 70000<br />
See also DHCPCLIENT LIST INTERFACECONFIGS<br />
DHCPSERVER SET MAXLEASETIME<br />
DHCPSERVER SET DEFAULTLEASETIME
262 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPCLIENT SET INTERFACECONFIG SERVER<br />
Syntax DHCPCLIENT SET INTERFACECONFIG {|} SERVER <br />
Description If DHCPCLIENT SET DHCPINFORM has been set to enabled, this command will<br />
unicast the first DHCPINFORM message to the specific DHCP server at the<br />
specified IP address. If the first unicast fails, the DHCPINFORM will default to<br />
broadcasting its messages.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ipaddress<br />
A name that identifies an existing DHCP<br />
client interface. To display client interface<br />
names, use the dhcpclient list<br />
interfaceconfigs command..<br />
A number that identifies an existing DHCP<br />
client interface. To display client interface<br />
numbers, use the dhcpclient list<br />
interfaceconfigs command<br />
The IP address of a DHCP server that<br />
DHCP client can use to obtain configuration<br />
parameters. The IP address is displayed in<br />
the following format:<br />
192.168.102.3<br />
NA<br />
NA<br />
NA<br />
Example<br />
--> dhcpclient set interfaceconfig client1 server 192.168.101.2<br />
See also DHCPSERVER SET INTERFACECONFIG DHCPINFORM<br />
DHCPCLIENT SET REBOOT<br />
Syntax DHCPCLIENT SET REBOOT <br />
Description When the DHCP client is restarted, it tries to reacquire the last address that it had.<br />
This command sets the time for which the client tries to reacquire its last address. At<br />
the expiry of this time, it gives up and tries to discover a new address.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 263<br />
reboottime<br />
The time (in seconds) for which a client tries<br />
to reacquire the last IP address it had. After<br />
this time the client gives up and tries to<br />
discover a new address.<br />
10<br />
Example --> dhcpclient set reboot 5<br />
DHCPCLIENT SET RETRY<br />
Syntax DHCPCLIENT SET RETRY <br />
Description This command sets the time that must pass after the client has determined that no<br />
DHCP server is present before it tries again to contact a DHCP server.<br />
To retrieve the current settings, use the DHCPCLIENT SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
retrytime<br />
The time (in seconds) that must pass after<br />
the client has determined that no DHCP<br />
server is present before it tries again to<br />
contact a DHCP server.<br />
300<br />
Example --> dhcpclient set retry 150<br />
DHCPCLIENT SHOW<br />
Syntax DHCPCLIENT SHOW<br />
Description This command displays the following global configuration information about<br />
DHCP client:<br />
• reboot time<br />
• retry time<br />
• maximum backoff time<br />
Example --> dhcpclient show<br />
Global DHCP Client Configuration:<br />
Reboot time: 10<br />
Retry time: 300<br />
Max. backoff time: 120<br />
See also DHCPCLIENT SET REBOOT<br />
DHCPCLIENT SET RETRY<br />
DHCPCLIENT SET BACKOFF
264 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
DHCPCLIENT UPDATE<br />
Syntax DHCPCLIENT UPDATE<br />
Description This command updates the DHCP client configuration. Changes made to the client<br />
configuration are not actually applied until this command has been entered.<br />
Example --> dhcpclient update<br />
dhcpclient: Reset request acknowledged. Reset imminent.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 265<br />
DHCP Relay Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage DHCP Relay<br />
module.<br />
DHCP relay CLI commands<br />
The table below lists the DHCP relay commands provided by the CLI:<br />
Command<br />
DHCPRELAY ADD SERVER<br />
DHCPRELAY CLEAR SERVERS<br />
DHCPRELAY DELETE SERVER<br />
DHCPRELAY ENABLE|DISABLE<br />
DHCPRELAY LIST SERVERS<br />
DHCPRELAY SHOW<br />
DHCPRELAY UPDATE<br />
DHCPRELAY ADD SERVER<br />
Syntax DHCPRELAY ADD SERVER <br />
Description This command adds the IP address of a DHCP server to the DHCP relayʹs list of<br />
server IP addresses. The relay can store a maximum of 10 DHCP server addresses.<br />
Any new server IP addresses added are not actually used until the DHCPRELAY<br />
UPDATE command has been entered.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ipaddress<br />
The IP address of a DHCP server that<br />
DHCP relay can use. The IP address is<br />
displayed in the IPv4 format (e.g<br />
192.168.102.3)<br />
N/A<br />
Example --> dhcprelay add server 239.252.197.0<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPRELAY UPDATE<br />
DHCPRELAY CLEAR SERVERS<br />
Syntax DHCPRELAY CLEAR SERVERS
266 Chapter 11 – Dynamic Host Configuration Protocol - DHCP<br />
Description This command deletes all DHCP server IP addresses stored in DHCP relayʹs list of<br />
server IP addresses.<br />
Example --> dhcprelay clear servers<br />
See also DHCPRELAY DELETE SERVER<br />
DHCPRELAY DELETE SERVER<br />
Syntax dhcprelay delete server <br />
Description This command deletes a single DHCP server address stored in the DHCP relayʹs list<br />
of server IP addresses.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
number<br />
A number that identifies the DHCP server<br />
in the DHCP relay’s list of servers. To<br />
display server numbers, use the<br />
DHCPRELAY LIST SERVERS command.<br />
N/A<br />
Example --> dhcprelay delete server 3<br />
See also DHCPRELAY LIST SERVERS<br />
DHCPRELAY CLEAR SERVERS<br />
DHCPRELAY ENABLE|DISABLE<br />
Syntax DHCPRELAY {ENABLE|DISABLE}<br />
Description This command enables/disables DHCP relay.<br />
DHCP relay must be enabled in order to carry out any DHCP relay configuration.<br />
<br />
Note: DHCP relay and DHCP server cannot be enabled at the same time. Trying<br />
to configure DHCP relay when DHCP server is enabled results in CLI warning<br />
message.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ENABLE<br />
DISABLE<br />
Enables configuration of DHCP relay.<br />
Disables configuration of DHCP relay.<br />
enable<br />
Example --> dhcprelay enable
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 267<br />
See also DHCPSERVER ENABLE|DISABLE<br />
DHCPRELAY LIST SERVERS<br />
Syntax DHCPRELAY LIST SERVERS<br />
Description This command displays the DHCP relayʹs list of DHCP server IP addresses with<br />
their identification numbers.<br />
Example --> dhcprelay list servers<br />
DHCP Servers:<br />
ID | IP Address<br />
-----|------------------<br />
1 | 192.168.102.3<br />
2 | 239.252.197.0<br />
------------------------<br />
See also DHCPSERVER LIST SUBNETS<br />
DHCPRELAY SHOW<br />
Syntax DHCPRELAY SHOW<br />
Description This command tells you whether DHCP relay is enabled or disabled.<br />
Example --> dhcprelay show server<br />
Global DHCP Relay Configuration:<br />
Status: ENABLED<br />
See also DHCPRELAY ENABLE|DISABLE<br />
DHCPRELAY UPDATE<br />
Syntax DHCPRELAY UPDATE<br />
Description This command updates the DHCP relay configuration. Changes made to the relay<br />
configuration will not take effect until this command has been entered.<br />
Example --> dhcprelay update<br />
dhcprelay: Reset request acknowledged. Reset imminent.
268 Chapter 12 – Domain Name System - DNS<br />
Chapter 12<br />
Domain Name System - DNS<br />
Introduction<br />
DNS is an abbreviation for Domain Name System, a system for naming computers<br />
and network services that is organized into a hierarchy of domains. DNS naming is<br />
used in TCP/IP networks, such as the Internet, to locate computers and services<br />
through user-friendly names. When a user enters a DNS name in an application,<br />
DNS services can resolve the name to other information associated with the name,<br />
such as an IP address.<br />
For example, most users prefer a friendly name such as “alliedtelesyn.com” to locate<br />
a computer such as a mail or web server on a network. A friendly name can be<br />
easier to learn and remember. However, computers communicate over a network by<br />
using numeric addresses. To make use of network resources easier, name services<br />
such as DNS provide a way to map the user-friendly name for a computer or service<br />
to its numeric address. If you have ever used a Web browser, you have used DNS.<br />
The following graphic shows a basic use of DNS, which is finding the IP address of<br />
a computer based on its name.<br />
Figure 12.<br />
Domain Name System
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 269<br />
In this example, a client computer queries a server, asking for the IP address of a<br />
computer configured to use host.alliedtelesyn.com as its DNS domain name.<br />
Because the server is able to answer the query based on its local database, it replies<br />
with an answer containing the requested information, which is a host (A) resource<br />
record that contains the IP address information for host.alliedtelesyn.com. The<br />
example shows a simple DNS query between a single client and server. In practice,<br />
DNS queries can be more involved than this and include additional steps not shown<br />
here.<br />
DNS Relay<br />
The AT-RG613, AT-RG623 and AT-RG656 can act as a DNS relay. So, DNS packets<br />
which arrive at the Residential Gateway, addressed to the Residential Gateway, will<br />
be relayed on to a known DNS Server.<br />
In this way, devices on the LAN can treat the Residential Gateway as though it were<br />
the DNS Server. Only the Residential Gateway needs to know the address of the real<br />
DNS Server looking into itʹs internal DNS Relay servers list.<br />
Itʹs possible configure the DHCP server running on the internal Residential<br />
Gatewayʹs IP interface in order to offer the IP address of itʹs internal IP interface as<br />
DNS serverʹs IP address for the internal hosts DNS requests.<br />
Itʹs also possible write a file named ʺdnsrelaylandbʺ with information about host<br />
attributes and a domain name and IP address mask. When DNS relay will receive a<br />
DNS request it will check if the answer to this request is in this file and in this case it<br />
will answer to the question; if it hasn’t enough information it will forward the<br />
request to a DNS server.<br />
It is possible to nominate both a primary and a secondary DNS server to contact.<br />
DNS responses received from the server are then forwarded back to the original<br />
host making the DHCP request.<br />
Both UDP and TCP DNS requests are supported.<br />
The DNS relay does not bind itself to any one specific interface or interface type, but<br />
rather will listen for traffic on all available IP interfaces. It relies on the well-known<br />
UDP and TCP port number for a DNS server (port number 53) for receiving DNS<br />
traffic.<br />
DNS Client<br />
AT-RG613, AT-RG623 and AT-RG656 are provided with an internal DNS client, to<br />
use this function you must add DNS server addresses that will be used by the<br />
Residential Gateway ONLY for its own lookups.
270 Chapter 12 – Domain Name System - DNS<br />
DNS Relay Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the DNS<br />
Relay module.<br />
DNS Relay CLI commands<br />
The table below lists the dnsrelay commands provided by the CLI:<br />
Command<br />
dnsrelay add server<br />
dnsrelay clear cache<br />
dnsrelay clear landatabase<br />
dnsrelay clear servers<br />
dnsrelay delete server<br />
dnsrelay list servers<br />
dnsrelay set landatabasefile<br />
dnsrelay show lanaddress<br />
dnsrelay show landomainnam<br />
dnsrelay show landatabasefilename<br />
DNSRELAY ADD SERVER<br />
Syntax DNSRELAY ADD SERVER <br />
Description This command adds the IP address of a DNS server to DNS relayʹs list of server IP<br />
addresses. The relay can store a maximum of 10 DNS server addresses.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option<br />
ip-address<br />
Description<br />
The IP address of a DNS server that DNS<br />
relay can use. The IP address is displayed in<br />
the IPv4 format (e.g. 192.168.102.3)<br />
Default Value<br />
0.0.0.0<br />
Example --> dnsrelay add server 10.17.90.100<br />
See also DNSRELAY LIST SERVERS<br />
DNSRELAY CLEAR CACHE<br />
Syntax DNSRELAY CLEAR CACHE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 271<br />
Description This command clears the DNS relay cache in the current session. DNS relay has a<br />
small local cache of DNS entries to increase performance for lookups of frequently<br />
used destinations.<br />
Example --> dnsrelay clear cache<br />
DNSRELAY CLEAR LANDATABASE<br />
Syntax DNSRELAY CLEAR LANDATABASE<br />
Description This command clears the DNS relay LAN database that was set using the<br />
DNSRELAY SET LANDATABASEFILE command.<br />
Example --> dnsrelay clear landatabase<br />
See also DNSRELAY SET LANDATABASEFILE<br />
DNSRELAY SHOW LANDATABASEFILENAME<br />
DNSRELAY CLEAR SERVERS<br />
Syntax DNSRELAY CLEAR SERVERS<br />
Description This command deletes all DNS server IP addresses stored in DNS relayʹs list of<br />
server IP addresses.<br />
Example --> dnsrelay clear servers<br />
See also DNSRELAY DELETE SERVER<br />
DNSRELAY DELETE SERVER<br />
Syntax DNSRELAY DELETE SERVER <br />
Description This command deletes a single DNS server address stored in DNS relayʹs list of<br />
server IP addresses.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
id- number<br />
A number that identifies the DNS server in<br />
the DNS relay list. To display server<br />
numbers, use the DNSRELAY LIST<br />
SERVERS command<br />
N/A
272 Chapter 12 – Domain Name System - DNS<br />
Example --> dnsrelay delete server 3<br />
See also DNSRELAY LIST SERVERS<br />
DNSRELAY LIST SERVERS<br />
Syntax DNSRELAY LIST SERVERS<br />
Description This command displays the DNS relayʹs list of DNS server IP addresses with their<br />
identification numbers.<br />
Example --> dnsrelay list servers<br />
DNS Relay Servers:<br />
ID | IP Address<br />
-----|------------------<br />
1 | 239.252.197.0<br />
------------------------<br />
DNSRELAY SET LANDATABASEFILE<br />
Syntax DNSRELAY SET LANDATABASEFILE <br />
Description This command tells DNS relay which filename it should load its local database<br />
from. The file is an ASCII file that you have created and stored in the ISFS<br />
configuration file.<br />
The landatabase file contains the following:<br />
• information about local host names and IP addresses<br />
• the domain name that the relay should use<br />
• the IP address and netmask that the relay should use<br />
Once the filename is set, DNS relay will load this database and use it to answer<br />
requests for local host names and/or IP addresses. Your LAN then has its own small<br />
DNS relay local database.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
filename<br />
The name of an existing file that contains a<br />
database of LAN host names and IP<br />
addresses.<br />
N/A<br />
Example --> dnsrelay set landatabasefile dnsrelaylandb<br />
See also DNSRELAY SHOW LANDATABASEFILENAME
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 273<br />
DNSRELAY SHOW LANADDRESS<br />
Syntax DNSRELAY SHOW LANADDRESS<br />
Description This command displays the IP address and subnet mask that the DNS relay uses to<br />
determine if a query is for an element of the local database. These information are in<br />
collected in the LANDATABASEFILENAME file.<br />
Example --> dnsrelay show lanaddress<br />
LAN IP Address: 172.16.200.0<br />
LAN IP Mask: 255.255.255.0<br />
See also DNSRELAY SHOW LANDOMAINNAME<br />
DNSRELAY SHOW LANDOMAINNAME<br />
Syntax DNSRELAY SHOW LANDOMAINNAME<br />
Description This command displays the domain name used by the DNS relay to determine if a<br />
host name request is for the local database. These information are in collected in the<br />
LANDATABASEFILENAME file.<br />
Example --> dnsrelay show landomainname<br />
LAN Domain Name: atkk.com<br />
See also DNSRELAY SHOW LANADDRESS<br />
DNSRELAY SHOW LANDATABASEFILENAME<br />
Syntax DNSRELAY SHOW LANDATABASEFILENAME<br />
Description This command displays the name of the file that was set using the DNSRELAY SET<br />
LANDATABASEFILENAME command. The second example shows the<br />
LANDATABASEFILENAME content.<br />
Example --> dnsrelay show landatabasefilename<br />
LAN Database File Name: //isfs/dnsrelaylandb<br />
Example --> domain_name yourdomain.com.<br />
lan_address 172.39.10.0<br />
lan_mask 255.255.255.0<br />
host_name host1.yourdomain.com.<br />
address 172.39.10.10<br />
host_name host1.yourdomain.com.<br />
address 172.39.10.15<br />
See also DNSRELAY SET LANDATABASEFILE
274 Chapter 12 – Domain Name System - DNS<br />
DNS Client Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the DNS Client<br />
module.<br />
DNS Client CLI commands<br />
The table below lists the DNSCLIENT commands provided by the CLI:<br />
Command<br />
dnsclient add searchdomain<br />
dnsclient add server<br />
dnsclient clear searchdomains<br />
dnsclient clear servers<br />
dnsclient delete searchdomain<br />
dnsclient delete server<br />
dnsclient list searchdomains<br />
dnsclient list servers<br />
DNSCLIENT ADD SEARCHDOMAIN<br />
Syntax DNSCLIENT ADD SEARCHDOMAIN <br />
Description This command creates a domain search list. The DNS client uses this list when a<br />
user asks for the IP address of a host, but specifies an incomplete domain name for<br />
the host. The search string specified replaces any previous search strings added<br />
previously using this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
searchstring<br />
A search string used to find the IP address<br />
for an incomplete domain name. You can<br />
have a maximum of 6 incomplete domain<br />
names in the search string.<br />
N/A<br />
Example --> dnsclient add searchdomain alliedtelesyn.com<br />
DNSCLIENT ADD SERVER<br />
Syntax DNSCLIENT ADD SERVER <br />
Description This command adds a server IP address to the server list. This enables you to<br />
retrieve a domain name for a given IP address.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 275<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ipaddress<br />
The IP address of the server that has an<br />
unknown domain name. You can add a<br />
maximum of 3 addresses to the server list.<br />
The IP address is displayed in the following<br />
format:<br />
192.168.102.3<br />
N/A<br />
Example --> dnsclient add server 192.168.219.196<br />
DNSCLIENT CLEAR SEARCHDOMAINS<br />
Syntax DNSCLIENT CLEAR SEARCHDOMAINS<br />
Description This command deletes all domain names from the domain search list.<br />
Example --> dnsclient clear searchdomains<br />
See also DNSCLIENT ADD SEARCHDOMAIN<br />
DNSCLIENT DELETE SEARCHDOMAIN<br />
DNSCLIENT CLEAR SERVERS<br />
Syntax DNSCLIENT CLEAR SERVERS<br />
Description This command deletes all the server IP addresses to the server list.<br />
Example --> dnsclient clear servers<br />
See also DNSCLIENT ADD SEARCHDOMAIN<br />
DNSCLIENT DELETE SERVER<br />
DNSCLIENT DELETE SEARCHDOMAIN<br />
Syntax DNSCLIENT DELETE SEARCHDOMAIN <br />
Description This command deletes a single domain name from the domain search list.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
searchstring<br />
A number that identifies a search string<br />
used to find the IP address for an<br />
N/A
276 Chapter 12 – Domain Name System - DNS<br />
incomplete domain name. To list domain<br />
search strings, use the DNSCLIENT LIST<br />
SEARCHDOMAINS command.<br />
Example --> dnsclient delete searchdomain 1<br />
DNSCLIENT DELETE SERVER<br />
Syntax DNSCLIENT DELETE SERVER <br />
Description This command deletes a single server IP addresses from the server list.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
number<br />
The server number that identifies an IP<br />
address of the server that has an unknown<br />
domain name. To display server numbers,<br />
use the DNSCLIENT LIST SERVERS<br />
command.<br />
N/A<br />
Example --> dnsclient delete server 1<br />
DNSCLIENT LIST SEARCHDOMAINS<br />
Syntax DNSCLIENT LIST SEARCHDOMAINS<br />
Description This command lists the domain search strings that you have added to the DNS<br />
client using the DNSCLIENT ADD SEARCHDOMAIN command. The DNS client<br />
uses this list when a user asks for the IP address of a host, but specifies an<br />
incomplete domain name for the host.<br />
Example --> dnsclient list searchdomains<br />
ID | Domain<br />
-----|---------------------<br />
1 | alliedtelesyn.com<br />
---------------------------<br />
DNSCLIENT LIST SERVERS<br />
Syntax DNSCLIENT LIST SERVERS<br />
Description This command lists the server IP addresses that you have added to the DNS client<br />
using the DNSCLIENT ADD SERVER command. The DNS client uses this list to<br />
retrieve a domain name for a given IP address.<br />
Example --> dnsclient list servers<br />
DNS Client Servers:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 277<br />
ID | IP Address<br />
----|------------------<br />
1 | 192.168.100.7<br />
2 | 192.168.100.1<br />
------------------------
278 Chapter 13 – SNTP<br />
Chapter 13<br />
SNTP<br />
The SNTP Version 4 client is an OSI Layer 7 application that allows the<br />
synchronization of the AT-RG613, AT-RG623 and AT-RG656 system clock to global<br />
sources of time-based information using UDP.<br />
Its detailed implementation, which is described in RFC 2030, provides a complete<br />
and simplified method to access international timeservers to receive, organize and<br />
adjust the time-synchronization of the local system.<br />
The SNTP client described herein is a scaled down version of the Network Time<br />
Protocol (NTP) which is specified in RFC 1305. The main difference between an<br />
SNTP and an NTP client is the fact that most SNTP clients will interact with, at<br />
most, a single (S)NTP server. Also, SNTP Version 4 clients include an “anycast”<br />
mode in addition to unicast and broadcast access modes not available in past<br />
versions of NTP/SNTP clients<br />
SNTP Features<br />
The following feature are available on then AT-RG613, AT-RG623 and AT-RG656<br />
Residential Gateway:<br />
• Boot time and runtime synchronization of the system clock can both be<br />
configured.<br />
• SNTP in the AT-RG613, AT-RG623 and AT-RG656 system can function in one of<br />
three transfer modes:<br />
o Unicast Mode - The SNTP client sends to a server, located at a<br />
specific previously configured address, a request for time<br />
synchronization and expects a reply only from that particular<br />
server.<br />
o Broadcast /Multicast Mode - A multicast NTP server periodically<br />
transmits a message to the local subnet broadcast address. The<br />
client is configured to listen, and receives the synchronized timebased<br />
information. The client then configures itself based on this<br />
information, but sends no reply
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 279<br />
o Anycast Mode – When the client is configured in anycast mode, it<br />
sends out a sync request to a local subnet broadcast address. One<br />
or several anycast SNTP servers can respond with an individual<br />
timestamp and a unicast address. The client subsequently binds<br />
to the first response it receives and continues its operations in a<br />
unicast mode with that particular server. Any other server<br />
responses that are received by the client afterwards are ignored.<br />
• 64 local time zones (which include summertime /daylight savings time)<br />
configurations are supported (see [10]).<br />
• Automatic periodic timeserver polling is configurable.<br />
• Configuration of packet timeouts and retry transmissions is supported.<br />
• Getting NTP Time Server IP Addresses via DNS lookup can be used.<br />
The SNTP client mode session uses the standard remote UDP port 123 for all data<br />
transfers. Port 123 will be used in both the Source Port and Destination Port fields of<br />
the UDP header.<br />
Time Zones and Daylight Savings (Summer Time)<br />
Conversion<br />
Although Daylight Savings (a.k.a. Summer Time) time zones are configurable using<br />
the SNTP client; there is no mechanism for the automatic change to/from a standard<br />
time/daylight savings time.<br />
Therefore, the user must manually configure the local time zone when the change in<br />
standard time occurs.<br />
For example, if the client configures the system time for EDT (US Eastern Daylight<br />
Time) which is –4h UTC, and a time change date arrives, the client will not<br />
automatically adjust the time or time zone to US Eastern Standard Time (-5h UTC)<br />
on any new time synchronization.<br />
A manual time zone configuration change from the user is needed to handle this<br />
transition.
280 Chapter 13 – SNTP<br />
SNTP Command <strong>Reference</strong><br />
This section describes the commands available on AT-RG613, AT-RG623 and AT-<br />
RG656 residential Gateway to enable, configure and manage SNTP module.<br />
SNTP CLI commands<br />
The table below lists the SNTPCLIENT commands provided by the CLI:<br />
Command<br />
SNTPCLIENT SET CLOCK<br />
SNTPCLIENT SET MODE<br />
SNTPCLIENT SET POLL-INTERVAL<br />
SNTPCLIENT SET RETRIES<br />
SNTPCLIENT SET SERVER<br />
SNTPCLIENT SET TIMEOUT<br />
SNTPCLIENT SET TIMEZONE<br />
SNTPCLIENT SHOW ASSOCIATION<br />
SNTPCLIENT SET CLOCK<br />
Syntax SNTPCLIENT SET CLOCK <br />
Description This command sets the system clock to a specific time and date. This command can<br />
be used as an alternative to synchronizing the local system clock via internal or<br />
external timeservers.<br />
Example The following command sets the system clock to 11:10:13pm, 2nd November 2001:<br />
--> sntpclient set clock 2001:11:02:23:10:13<br />
SNTPCLIENT SET MODE<br />
Syntax SNTPCLIENT SET MODE {UNICAST|BROADCAST|ANYCAST} {ENABLE|DISABLE}<br />
Description This command enables/disables a particular access mode for the STNP client. There<br />
are three modes to choose from, and each mode can be separately enabled or<br />
disabled:<br />
• Unicast mode<br />
• Enable - the mode sends unicast messages to the IP address or hostname in<br />
the SNTP server association list. The SNTP client attempts to contact the<br />
specific server in the association in order to receive a timestamp when the<br />
sntpclient sync command is issued.<br />
• Disable - the unicast server is removed from the association list.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 281<br />
• Broadcast mode<br />
• Enable - allows the SNTP client to accept time synchronization broadcast<br />
packets from an SNTP server located on the network, and updates the local<br />
system time accordingly.<br />
• Disable - stops synchronization via broadcast mode.<br />
• Anycast mode<br />
• Enable - the SNTP client sends time synchronized broadcast packets to the<br />
network and subsequently expects a reply from a valid timeserver. The<br />
client then uses the first reply it receives to establish a link for future sync<br />
operations in unicast mode. This server will then be added to the server<br />
association list. The client ignores any later replies from other servers after<br />
the first one is received. The server learnt by the anycast process takes<br />
precedence over any entries currently in the associations list when the<br />
sntpclient sync command is issued.<br />
• Disable - stops synchronization via anycast mode.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
UNICAST<br />
BROADCAST<br />
ANYCAST<br />
ENABLE<br />
DISABLE<br />
Sets the time synchronous access mode to<br />
use the unicast server.<br />
Sets the time synchronous access mode to<br />
use the broadcast server.<br />
Sets the time synchronous access mode to<br />
use the anycast server.<br />
Enables the selected time synchronous<br />
access mode.<br />
Enables the selected time synchronous<br />
access mode.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> sntpclient set mode anycast enable<br />
See also SNTPCLIENT SET SERVER<br />
SNTPCLIENT SET POLL-INTERVAL<br />
Syntax SNTPCLIENT SET POLL-INTERVAL <br />
Description This command sets the SNTP client to automatically send a time synchronization<br />
request (specific to the mode) to the network at a specific interval. If the pollinterval<br />
is set to 0, the polling mechanism will be disabled.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
282 Chapter 13 – SNTP<br />
Option Description Default Value<br />
0-30<br />
Sets the polling interval (in minutes) that<br />
SNTP client will send a time sync request.<br />
This can be any value between 0 and 30.<br />
0 (disabled)<br />
Example --> sntpclient set poll-interval 10<br />
SNTPCLIENT SET RETRIES<br />
Syntax SNTPCLIENT SET RETRIES <br />
Description This command sets the number of retry attempts that will be made when no<br />
response is received from a timeserver. If the client receives no reply to its sync<br />
requests, it willcontinue sending request packets at a fixed interval (set by the<br />
SNTPCLIENT SET TIMEOUT command), up to the number of retries specified in<br />
this command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
0-10<br />
Sets the number of packet retry attempts<br />
made when no response is received from a<br />
timeserver.<br />
2<br />
Example --> sntpclient set retries 4<br />
See also SNTPCLIENT SET TIMEOUT<br />
SNTPCLIENT SET SERVER<br />
Syntax SNTPCLIENT SET SERVER {IPADDRESS | HOSTNAME }<br />
Description This command sets the dedicated unicast server with which the SNTP client can<br />
synchronize its time. You can set the server by specifying either the IP address or<br />
the hostname.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ipaddress<br />
hostname<br />
The IP address of the dedicated unicast<br />
server that SNTP can use to synchronize its<br />
time.<br />
The hostname of the dedicated unicast<br />
server that SNTP can use to synchronize its<br />
time.<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 283<br />
Examples IP address<br />
--> sntpclient set server ipaddress 129.6.15.28<br />
hostname<br />
--> sntpclient set server hostname time-a.nist.gov<br />
SNTPCLIENT SET TIMEOUT<br />
Syntax SNTPCLIENT SET TIMEOUT <br />
Description This command sets the received packet response timeout value (in seconds) upon<br />
sync request initiation. If a response is not received within the time specified by this<br />
command, the client will resend the request. This cycle will continue until either a<br />
reply is received, or the cycle has been repeated for the number of times specified in<br />
the SNTPCLIENT SET RETRIES command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
0-30<br />
Sets the received packet response timeout<br />
value (in seconds). This can be any value<br />
between 0 and 30.<br />
5 seconds<br />
Example --> sntpclient set timeout 10<br />
See also SNTPCLIENT SET RETRIES<br />
SNTPCLIENT SET TIMEZONE<br />
Syntax SNTPCLIENT SET TIMEZONE <br />
Description This command sets the local time zone. The timezone is represented by one of the<br />
abbreviations given in a table below. Setting the timeszonecan configure the local<br />
system to be up to + 13 hours different from Universal Time Coordinate (UTC).<br />
64 of the worlds most prominent time zones are represented (including both<br />
standard times and summer/daylight saving times).<br />
Options The following table gives the 64 time zone abbreviations that you can use in this<br />
command.<br />
The table also contains the difference in time (in hours and minutes) from the UTC,<br />
and a description of the area of the world (from west to east) where the time<br />
difference is calculated from:<br />
Abbreviation + UTC World Area of Time Zone<br />
IDLW -1200 International Date Line West<br />
NT -1100 Nome
284 Chapter 13 – SNTP<br />
HST -1000 Hawaii Standard<br />
AKST -0900 Alaska Standard<br />
YST -0900 Yukon Standard<br />
YDT -0800 Yukon Daylight<br />
PST -0800 US Pacific Standard<br />
PDT -0700 US Pacific Daylight<br />
MST -0700 US Mountain Standard<br />
MDT -0600 US Mountain Daylight<br />
CST -0600 US Central Standard<br />
CDT -0500 US Central Daylight<br />
EST -0500 US Eastern Standard<br />
EDT -0400 US Eastern Daylight<br />
AST -0400 Atlantic Standard<br />
NFST -0330 Newfoundland Standard<br />
NFT -0330 Newfoundland<br />
BRA -0300 Brazil Standard<br />
ADT -0300 Atlantic Daylight<br />
NDT -0230 Newfoundland Daylight<br />
AT -0200 Azores<br />
WAT -0100 West Africa<br />
GMT +0000 Greenwich Mean<br />
UTC +0000 Universal (Coordinated)<br />
WET +0000 Western European<br />
CET +0100 Central European<br />
FWT +0100 French Winter<br />
MET +0100 Middle European<br />
MEWT +0100 Middle European Winter<br />
SWT +0100 Swedish Winter<br />
BST +0100 British Summer<br />
EET +0200 Eastern Europe<br />
FST +0200 French Summer<br />
MEST +0200 Middle European Summer<br />
SST +0200 Swedish Summer<br />
IST +0200 Israeli Standard
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 285<br />
IDT +0300 Israeli Daylight<br />
BT +0300 Baghdad<br />
IT +0330 Iran<br />
USZ3 +0400 Russian Volga<br />
USZ4 +0500 Russian Ural<br />
INST +0530 Indian Standard<br />
USZ5 +0600 Russian West-Siberian<br />
NST +0630 North Sumatra<br />
WAST +0700 West Australian Standard<br />
USZ6 +0700 Russian Yenisei<br />
JT +0730 Java<br />
CCT +0800 China Coast<br />
WADT +0800 West Australian Daylight<br />
ROK +0900 Korean Standard<br />
KST +0900 Korean Standard<br />
JST +0900 Japan Standard<br />
CAST +0930 Central Australian Standard<br />
KDT +1000 Korean Daylight<br />
EAST +1000 Eastern Australian Standard<br />
GST +1000 Guam Standard<br />
CADT +1030 Central Australian Daylight<br />
EADT +1100 Eastern Australian Daylight<br />
IDLE +1200 International Date Line East<br />
NZST +1200 New Zealand Standard<br />
NZT +1200 New Zealand<br />
NZDT +1300 New Zealand Daylight<br />
Example In the example below, the time zone is set to Unites States Eastern Standard Time,<br />
which is five hours earlier than UTC (-0500):<br />
--> sntpclient set timezone EST<br />
SNTPCLIENT SHOW ASSOCIATION<br />
Syntax SNTPCLIENT SHOW ASSOCIATION<br />
Description This command lists the server being used by the SNTP client and displays whether<br />
or not the client is currently synchronized with this server.
286 Chapter 13 – SNTP<br />
Examples IP address<br />
--> sntpclient show association<br />
Time <strong>Reference</strong> Server IP address: 129.6.15.28<br />
** Local clock synchronized with this server.<br />
hostname<br />
--> sntpclient show association<br />
Time <strong>Reference</strong> Server Hostname: time-a.nist.gov<br />
** Local clock synchronized with this server.<br />
See also SNTPCLIENT SET SERVER<br />
SNTP SHOW STATUS<br />
Syntax SNTPCLIENT SHOW STATUS<br />
Description This command displays the SNTP client status information.<br />
Example --> sntpclient show status<br />
Clock Synchronized TRUE<br />
SNTP Standard Version Number: 4<br />
SNTP Mode(s) Configured: Unicast Broadcast<br />
Local Time: Tuesday, 28 Aug, 2001 - 14:39:25<br />
Local Timezone: EDT, Eastern Daylight Time<br />
Time Difference +-VTC: -4:00<br />
Precision: 1/16384 of a second<br />
Root Dispersion: +0.2342 second(s)<br />
Server <strong>Reference</strong> ID: GPS.<br />
Round Trip Delay: 2 second(s)<br />
Local Clock Offset: -1 second(s)<br />
Resync Poll Interval 15 minute(s)<br />
Packet Retry Timeout: 5 seconds<br />
Packet Retry Attempts: 3<br />
See also SNTPCLIENT SHOW ASSOCIATION<br />
SNTPCLIENT SYNC<br />
Syntax SNTPCLIENT SYNC<br />
Description This command forces the SNTP client to immediately synchronize the local time<br />
with the server located in the association list (if unicast) or, if anycast is enabled,<br />
initiate an anycast sequence.<br />
Example --> sntpclient sync<br />
See also SNTPCLIENT SET SERVER
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 287<br />
Chapter 14<br />
PPPoE<br />
Telecommunications companies offer serial communications links around the globe<br />
right now and have done so for many years. To make TCP/IP work over these serial<br />
links, it was necessary to create a protocol that could transmit TCP/IP packets over<br />
serial lines. The two protocols that do this are:<br />
• SLIP (Serial Line Internet Protocol)<br />
• PPP<br />
PPP is more feature rich and has largely supplanted SLIP.<br />
When serial links that are part of the public telephone system are used, care must be<br />
taken to ensure the authenticity of all communications. To this end PPP incorporates<br />
user name and password security. Thus, a router or server receiving a request via<br />
PPP where the origin of the request is not secure, would require authentication. This<br />
authentication is part of PPP. Because of its ability to route TCP/IP packets over<br />
serial links and its authentication capabilities, PPP is generally used by Internet<br />
Service Providers (ISPs) to allow dial-up users to connect to the Internet.<br />
Figure 13. PPP is used by Internet Service Providers (ISPs) to allow dial-up users<br />
to connect to the Internet.<br />
PPP has now been adapted to Ethernet, and is appropriately called PPP over<br />
Ethernet (PPPoE). Since PPP was designed to do things that were either impossible<br />
or unnecessary with Ethernet, users are often confused as to why one would want to<br />
use PPP over Ethernet at all.
288 Chapter 14 – PPPoE<br />
If we were to compare TCP/IP traffic to vehicle traffic, the basic TCP/IP protocol<br />
would be comparable to a network of city streets. Streets can serve many access<br />
points. It is easy to get on to and off the street.<br />
Additional access points can be added with little disruption. It is hard to tell how<br />
many cars are actually using each street. PPP, on the other hand, would be<br />
comparable to a railway. Travel is generally between two well-defined points. You<br />
canʹt get on and off anywhere. It is relatively easy to count and monitor passengers.<br />
You need a ticket to board.<br />
If this is true, then is not PPPoE like running railway tracks down Main Street? In<br />
fact, yes, it is. That is what tramways do. Without disturbing main street traffic, they<br />
bring the advantages of railways. They offer speedy access between two welldefined<br />
points and allow you to count passengers. And you need a ticket to board.<br />
PPPoE allows ISPs to monitor the volume of traffic that their users generate.<br />
PPP over Ethernet brings this sort of functionality to ISPs that do not use serial links<br />
to connect their users. Serial ISPs already use PPP over modem communications.<br />
DSL providers, on the other hand, use Ethernet, not serial communications. Because<br />
of this, many require the added functionality of PPP over Ethernet, which allows<br />
them to secure communications through the use of user logins and have the ability<br />
to measure the volume of traffic each user generates.<br />
Example of PPPoE connection.<br />
PPPoE support on the AT-RG6xx Residential<br />
Gateway series<br />
In order to use the PPP stack, one IP interface must be added to the PPP stack and<br />
attached to a PPPoE transport.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 289<br />
Typically PPPoE is the “way” to connect the internal device with the external<br />
world. Each PPPoE instance must have a unique subnet and belong to a unique<br />
VLAN.<br />
Adding and attaching PPPoE connections<br />
PPPoE connections are added and attached using the commands provided in the IP<br />
and PPPoE modules respectively.<br />
IP interfaces use typically the services provided by pppoe transports. PPPoE transport<br />
is an abstraction layer used to classify the format of the PPPoE packets that will be<br />
transferred through the network. The other type of transport explained above in<br />
chapter 5 is ethernet. Packets transmitted through a pppoe connection or Ethernet<br />
connection will have different frame formats even though they convey the same<br />
type of information to the IP layer.<br />
Because the system supports VLANs, the same ethernet port can be shared between<br />
different VLANs. Therefore itʹs not possible map a pppoe transport directly to a<br />
physical ethernet port.<br />
Instead pppoe transports are mapped to VLANs that from a logical point of view act<br />
as an ethernet port would do in a simple system without VLANs<br />
To attach a pppoe transport to the Residential Gateway the following steps must be<br />
performed:<br />
• Create a VLAN on the wan port using, for example, the command<br />
vlan add v2 vid 2<br />
vlan add v2 port wan frame untagged<br />
• Define the vlan as PPPoE transport using the command:<br />
pppoe add transport v2 4<br />
• Create an IP interface and attach the IP interface to the PPPoE using the following<br />
command:<br />
ip add interface ip2<br />
ip attach ip2 v2<br />
Negotiation of PPPoE connections<br />
A PPPoE connection is a point-to-point connection; the “speakers” are the PPPoE<br />
Client on the RG6xx and the PPPoE Server of the Access Concentrator on the other<br />
end of the connection. The most relevant feature of PPP connections is the Security<br />
provided by the PAP (Password Authentication Protocol) and CHAP (Challenge<br />
Handshake Authentication Protocol) protocols. In fact among the negotiation<br />
parameters there are “User Name” and “Password”, which are unique identifiers<br />
the particular PPPoE Client.<br />
To establish the PPP connection, itʹs necessary firstly negotiate which authentication<br />
protocol (PAP or CHAP) to be use, and then send the authentication parameters<br />
(User Name and Password) requested by the access service.
290 Chapter 14 – PPPoE<br />
To configure the authentication related parameters on a PPPoE instance the<br />
following steps must be performed:<br />
pppoe set transport v2 welogin ( none/auto/chap/pap)<br />
pppoe set transport v2 username abcdef…..<br />
pppoe set transport v2 password abcdef…<br />
After the completion of the authentication phase of the PPP negotiation, the PPPoE<br />
client negotiates with the Server the IP parameters for the connection:<br />
• IP address for client and server ends of the link<br />
• Primary DNS Server IP address<br />
• Secondary DNS Server IP address
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 291<br />
PPPoE Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the PPPoE<br />
module.<br />
PPPoE CLI commands<br />
The table below lists the PPPoE commands provided by the CLI:<br />
Command<br />
PPPOE ADD TRANSPORT<br />
PPPOE CLEAR TRANSPORTS<br />
PPPOE DELETE TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT ACCESSCONCENTRATOR<br />
PPPOE SET TRANSPORT AUTOCONNECT<br />
PPPOE SET TRANSPORT AUTOCONNECT FILTER ADD<br />
PPPOE SET TRANSPORT AUTOCONNECT FILTER DELETE<br />
PPPOE SET TRANSPORT ENABLED/DISABLED<br />
PPPOE SET TRANSPORT GIVEDNS CLIENT<br />
PPPOE SET TRANSPORT GIVEDNS RELAY<br />
PPPOE SET TRANSPORT LCPECHOEVERY<br />
PPPOE SET TRANSPORT LCPMAXCONF<br />
PPPOE SET TRANSPORT LCPMAXFAIL<br />
PPPOE SET TRANSPORT LCPMAXTERM<br />
PPPOE SET TRANSPORT STATIC_IP/DYNAMIC_IP<br />
PPPOE SET TRANSPORT PASSWORD<br />
PPPOE SET TRANSPORT SERVICENAME<br />
PPPOE SET TRANSPORT USERNAME<br />
PPPOE SET TRANSPORT WELOGIN<br />
PPPOE SHOW TRANSPORT<br />
PPPOE ADD TRANSPORT<br />
Syntax PPPOE ADD TRANSPORT [ACCESSCONCENTRATOR<br />
] [SERVICENAME ]
292 Chapter 14 – PPPoE<br />
Description This command creates a PPPoE transport that performs dialout over Ethernet. It<br />
allows you to specify the following parameters for the PPPoE client:<br />
• the vlan used to receive and send packets belonging to the PPP interface<br />
• the internal port that will transport data<br />
• access concentrator (optional<br />
• service name (optional)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value for each option (if applicable).<br />
Option Description Default Value<br />
name<br />
vlanname<br />
port<br />
concentrator<br />
service name<br />
An arbitrary name that identifies the<br />
transport. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit.<br />
The vlan name used to carry PPPoE packets<br />
of the current PPP interface.<br />
The internal system port that used to<br />
distinguish PPPoE packets. Available<br />
values are from 1 to 8..<br />
A PPPoE tag that identifies a remote access<br />
concentrator (or PPPoE server). PPPoE will<br />
only connect to the named access<br />
concentrator. If no concentrator tag is set,<br />
PPPoE connects to the first access<br />
concentrator that responds. The tag<br />
name/number is determined by your ISP.<br />
A PPPoE tag that identifies a specific service<br />
that is acceptable to the PPPoE client. If set,<br />
the PPPoE transport will connect to the first<br />
access concentrator it finds that uses this<br />
service. If an access concentrator is also set,<br />
the PPPoE transport will connect to the<br />
specified service on the named<br />
concentrator.<br />
The service name is determined by your<br />
ISP.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example<br />
--> pppoe add transport pppoe1 default 1<br />
See also PPPOE LIST TRANSPORTS<br />
ETHERNET LIST PORTS<br />
For more information on host unique tags, see http://www.ietf.org/rfc/rfc2516.txt
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 293<br />
PPPOE CLEAR TRANSPORTS<br />
Syntax PPPOE CLEAR TRANSPORTS<br />
Description This command deletes all PPPoE transports that were created using the PPPoE<br />
ADD TRANSPORT command.<br />
Example --> pppoe clear transports<br />
See also PPPOE DELETE TRANSPORT<br />
PPPOE DELETE TRANSPORT<br />
Syntax PPPOE DELETE TRANSPORT {|}<br />
Description This command deletes a single PPPoE transport.<br />
<br />
If an IP interface is attached to the pppoe transport, itʹs necessary detach the IP<br />
interface using the IP DETACH command before removing the pppoe transport.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value for each option (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
N/A<br />
N/A<br />
Example --> pppoe delete transport pppoe1<br />
See also PPPOE LIST TRANSPORTS<br />
PPPOE LIST TRANSPORTS<br />
Syntax PPPOE LIST TRANSPORTS<br />
Description This command lists PPPoE transports that have been created using the PPPOE ADD<br />
TRANSPORT command. It displays the following information about the transports:<br />
• transport identification number<br />
• transport name
294 Chapter 14 – PPPoE<br />
Example --> pppoe list transports<br />
PPPOE transports:<br />
ID | Name | Port<br />
-----|------------|-----------<br />
1 | default | ethernet2<br />
2 | vlan21 | ethernet2<br />
------------------------------<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE SET TRANSPORT ACCESSCONCENTRATOR<br />
Syntax PPPOE SET TRANSPORT {|} ACCESSCONCENTRATOR<br />
<br />
Description This command specifies the access concentrator that you want PPPoE to connect to.<br />
<br />
If an access concentrator has been defined, to remove it, itʹs necessary remove<br />
the pppoe transport where the access concentrator refers.<br />
You can also specify a service name using the SET TRANSPORT SERVICENAME<br />
command so that PPPoE will only accept a specific service via a specific access<br />
concentrator.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
concentrator<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
A PPPoE tag that identifies a remote access<br />
concentrator (or PPPoE server). PPPoE will<br />
only connect to the named access<br />
concentrator. If no concentrator tag is set,<br />
PPPoE connects to the first access<br />
concentrator that responds. The tag<br />
name/number is determined by your ISP.<br />
N/A<br />
N/A<br />
Empty string<br />
Example --> pppoe set transport pppoe1 accessconcentrator server5<br />
See also PPPOE LIST TRANSPORTS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 295<br />
PPPOE SET TRANSPORT SERVICENAME<br />
PPPOE SHOW TRANSPORT<br />
For more information on PPPoE and access concentrators, see RFC2516;<br />
http://www.ietf.org/rfc/rfc2516.txt.<br />
PPPOE SET TRANSPORT AUTOCONNECT<br />
Syntax PPPOE SET TRANSPORT {|} AUTOCONNECT<br />
{ENABLED|DISABLED }<br />
Description This command enables/disables the PPPoE autoconnect function.<br />
If enabled, PPPoE automatically opens the link to the access concentrator whenever<br />
the link is down and a user needs to send TCP/IP packets to a public address.<br />
<br />
Itʹs possible specify one or more filters to block the autoconnect function when a<br />
UDP or TCP connection is requested to a particular port. See PPPOE SET<br />
TRANSPORT AUTOCONNECT ADD FILTER command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
Enables PPPoE autoconnect.<br />
Disables PPPoE autoconnect.<br />
N/A<br />
N/A<br />
disable<br />
Example --> pppoe set transport pppoe1 autoconnect enable<br />
See also PPPOE SET TRANSPORT AUTOCONNECT FILTER<br />
PPPOE SET TRANSPORT AUTOCONNECT FILTER<br />
ADD<br />
Syntax PPPOE SET TRANSPORT {|} AUTOCONNECT FILTER ADD<br />
{TCPPORT |UDPPORT }<br />
Description This command disables the PPPoE autoconnect function when a TCP/UDP session<br />
is requested for a specific address port.
296 Chapter 14 – PPPoE<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
tcpport<br />
udpport<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The destination port related to the TCP<br />
section that must be blocked.<br />
The destination port related to the UDP<br />
section that must be blocked.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example --> pppoe set transport pppoe1 autoconnect filter add tcpport<br />
23<br />
See also PPPOE SET TRANSPORT AUTOCONNECT<br />
PPPOE SET TRANSPORT AUTOCONNECT FILTER<br />
DELETE<br />
Syntax PPPOE SET TRANSPORT {|} AUTOCONNECT FILTER<br />
DELETE {TCPPORT |UDPPORT }<br />
Description This command removes a PPPoE filter previously added with the command PPPOE<br />
SET TRANSPORT AUTOCONNECT FILTER ADD.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
tcpport<br />
udpport<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The destination port related to the TCP<br />
section that must be blocked.<br />
The destination port related to the UDP<br />
section that must be blocked.<br />
N/A<br />
N/A<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 297<br />
Example --> pppoe set transport pppoe1 autoconnect filter delete<br />
tcpport 23<br />
See also PPPOE SET TRANSPORT AUTOCONNECT<br />
PPPOE SET TRANSPORT ENABLED/DISABLED<br />
Syntax PPPOE SET TRANSPORT {|} {ENABLED|DISABLED}<br />
Description This command explicitly enables/disables a PPPoE transport. Attaching a transport<br />
to an interface implicitly enables it, but for cases where no attach is performed (for<br />
example, multiple channels on an interface, a PPP session that is not attached but<br />
needed for testing purposes) the transport must be enabled explicitly.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value for each option (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
Enables a PPPoE transport.<br />
Disables a PPPoE transport.<br />
N/A<br />
N/A<br />
disable<br />
Example --> pppoe set transport pppoe1 enabled<br />
See also PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT GIVEDNS CLIENT<br />
Syntax PPPOE SET TRANSPORT {|} GIVEDNS CLIENT {ENABLED |<br />
DISABLED}<br />
Description This command controls whether the PPP Internet Protocol Control Protocol (IPCP)<br />
can request a DNS server IP address for a remote PPP peer. Once IPCP has<br />
discovered the DNS server IP address, it gives the address to the local DNS client so<br />
that it can be used for DNS lookups initiated from the Residential Gateway itself.<br />
You must have the DNS client process included in your image build in order to use<br />
this feature.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
298 Chapter 14 – PPPoE<br />
Option Description Default Value<br />
name<br />
number<br />
ENABLED<br />
DISABLED<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
IPCP can request a DNS server IP address<br />
and then give the address to DNS client.<br />
A DNS server IP address learnt by IPCP<br />
will not be passed to the DNS client.<br />
N/A<br />
N/A<br />
enabled<br />
Example --> pppoe set transport pppoe1 givedns client enabled<br />
See also PPPOE SET TRANSPORT GIVEDNS RELAY ENABLED|DISABLED<br />
PPPOE SET TRANSPORT REMOTEDNS<br />
PPPOE SET TRANSPORT DISCOVERDNS PRIMARY<br />
PPPOE SET TRANSPORT DISCOVERDNS SECONDARY<br />
For more information on DNS client, see ATMOS DNS Client Functional<br />
Specification: DO-008322-PS.<br />
For information on DNS implementation and specification, see<br />
http://www.ietf.org/rfc/rfc1035.txt.<br />
PPPOE SET TRANSPORT GIVEDNS RELAY<br />
Syntax PPPOE SET TRANSPORT {|} GIVEDNS RELAY {ENABLED |<br />
DISABLED}<br />
Description This command controls whether the PPP Internet Protocol Control Protocol (IPCP)<br />
can request the DNS server IP address for a remote PPP peer. Once IPCP has<br />
discovered the DNS server IP address, it gives the address to the local DNS relay so<br />
it can be used for relayed DNS lookups.<br />
You must have the DNS relay process included in your image build in order to use<br />
this feature.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
N/A<br />
number A number that identifies an existing PPPoE N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 299<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
ENABLED<br />
DISABLED<br />
IPCP can request a DNS server IP address<br />
and then give the address to DNS relay.<br />
A DNS server IP address learnt by IPCP<br />
will not be passed to the DNS relay.<br />
enabled<br />
Example --> PPPOE SET TRANSPORT PPPOE1 GIVEDNS RELAY ENABLED<br />
See also PPPOE SET TRANSPORT GIVEDNS CLIENT ENABLED|DISABLED<br />
PPPOE SET TRANSPORT REMOTEDNS<br />
PPPOE SET TRANSPORT DISCOVERDNS PRIMARY<br />
PPPOE SET TRANSPORT DISCOVERDNS SECONDARY<br />
DNS RELAY CLI COMMANDS<br />
For information on DNS implementation and specification, see<br />
http://www.ietf.org/rfc/rfc1035.txt.<br />
PPPOE SET TRANSPORT LCPECHOEVERY<br />
Syntax PPPOE SET TRANSPORT {|} LCPECHOEVERY <br />
Description This command tells a specified PPP transport to send an LCP (Link Control<br />
Protocol) echo request frame at specified intervals (in seconds). If no reply is<br />
received, the PPP connection is turned down. This functionality is also known as<br />
`keep-aliveʹ.<br />
If you do not want to send LCP echo frames, specify zero (0) in the <br />
attribute.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
interval<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The length of time (in seconds) between<br />
LCP echo request frames being sent. If you<br />
do not want echo request frames to be sent,<br />
specify `0ʹ as the interval.<br />
N/A<br />
N/A<br />
10 seconds<br />
Example --> pppoe set transport pppoe2 lcpechoevery 0
300 Chapter 14 – PPPoE<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT LCPMAXCONF<br />
Syntax PPPOE SET TRANSPORT {|} LCPMAXCONF <br />
Description This command sets the maximum number of Link Control Protocol (LCP)<br />
configure requests that will be sent by an existing PPPoE transport before it decides<br />
that the PPP peer is not responding. Upon having decided that the peer is not<br />
responding, the transport changes from the REQ SENT state back to the STARTING<br />
state; ie it stops trying to negotiate the link.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
lcp max<br />
configure<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
Link Control Protocol; the maximum<br />
number of configures that can be<br />
transmitted without reply before assuming<br />
that the PPP peer is unable to respond. The<br />
LCPmaxconf can be any positive value.<br />
N/A<br />
N/A<br />
10<br />
Example --> pppoe set transport pppoe1 lcpmaxconf 20<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT LCPMAXFAIL<br />
Syntax PPPOE SET TRANSPORT {|} LCPMAXFAIL <br />
Description This command sets the Link Control Protocol (LCP) maximum fail number.This is<br />
the number of configure-nak packets sent without receiving a valid configure ack<br />
before assuming the configuration is not converging.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 301<br />
Option Description Default Value<br />
name<br />
number<br />
lcp max fail<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The maximum number of consecutive LCP<br />
negative acknowledgements (indicating<br />
that the information received contains<br />
errors) that can be transmitted before<br />
assuming that parameter negotiation is not<br />
converging. The LCPmaxfail can be any<br />
positive value.<br />
N/A<br />
N/A<br />
5<br />
Example --> pppoe set transport pppoe1 lcpmaxfail 20<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT LCPMAXTERM<br />
Syntax PPOE SET TRANSPORT {|} LCPMAXTERM <br />
Description This command sets the Link Control Protocol (LCP) maximum terminate number<br />
for an existing PPPoE transport. When the transport has sent this number of<br />
consecutive LCP terminate requests without receiving a reply, it will assume that<br />
the PPP peer is unable to reply, and will simply terminate the link.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
lcp max term<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The maximum number of consecutive LCP<br />
Terminate Requests that will be sent<br />
without reply before assuming that the<br />
destination address is unable to respond.<br />
The LCPfailterm can be any positive value.<br />
N/A<br />
N/A<br />
2
302 Chapter 14 – PPPoE<br />
Example --> pppoe set transport pppoe1 lcpmaxterm 20<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT STATIC_IP/DYNAMIC_IP<br />
Syntax PPPOE SET TRANSPORT {|} {STATIC_IP |<br />
DYNAMIC_IP}<br />
Description This command tells the PPP process the local IP address to be used on this PPP<br />
interface or sets the PPP interface to get the IP address dynamically.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
Number<br />
ip-address<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
The IP address of the local `client-endʹ of<br />
the PPP link, displayed in the IPv4 format:<br />
111.222.254.4<br />
N/A<br />
N/A<br />
0.0.0.0<br />
Example --> pppoe set transport pppoe1 static_ip 192.168.103.2<br />
See also PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT REMOTEIP<br />
PPPOE SET TRANSPORT PASSWORD<br />
Syntax PPPOE SET TRANSPORT {|} PASSWORD <br />
Description This command sets an authentication password on a named transport. The<br />
password is required when PPP negotiation takes place and is supplied to the<br />
remote PPP server for authentication.<br />
<br />
To configure correctly an authenticated pppoe connection itʹs necessary send<br />
also the PPPOE SET TRANSPORT WELOGIN command and set the
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 303<br />
authentication username using the PPPOE SET TRANSPORT USERNAME<br />
command..<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
number<br />
password<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
An arbitrary word that acts as a password<br />
enabling you to be authenticated by the<br />
remote end of the link. The password will<br />
be required by the PPP server and is passed<br />
to the server using either the PAP or CHAP<br />
protocol. It can be made up of one or more<br />
characters and/or digits. To display the<br />
password, use the PPPOE SHOW<br />
TRANSPORT command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> pppoe set transport pppoe2 password mercury<br />
See also PPPOE LIST TRANSPORTS<br />
PPPOE SHOW TRANSPORT<br />
PPPOE SET TRANSPORT USERNAME<br />
PPPOE SET TRANSPORT SERVICENAME<br />
Syntax<br />
PPPOE SET TRANSPORT {|} SERVICENAME <br />
Description This command specifies the service name that is acceptable to the PPPoE client.<br />
<br />
To remove a previously set servicename, itʹs necessary remove the pppoe<br />
transport where the servicename was added.<br />
You can also set the access concentrator using the SET TRANSPORT<br />
ACCESSCONCENTRATOR command so that PPPoE will only accept a specific<br />
service via a specific access concentrator.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
304 Chapter 14 – PPPoE<br />
Option Description Default Value<br />
name<br />
number<br />
service name<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
A PPPoE tag that identifies a specific service<br />
that is acceptable to the PPPoE client. If set,<br />
the PPPoE transport will connect to the first<br />
access concentrator it finds that uses this<br />
service. If an access concentrator is also set,<br />
the PPPoE transport will connect to the<br />
specified service on the named<br />
concentrator. The service name is<br />
determined by your ISP.<br />
N/A<br />
N/A<br />
Empty string<br />
Example --> pppoe set transport pppoe1 servicename jupiter<br />
See also PPPOE LIST TRANSPORTS<br />
PPPOE SET TRANSPORT ACCESSCONCENTRATOR<br />
PPPOE SHOW TRANSPORT<br />
For more information on PPPoE and service names, see RFC2516;<br />
http://www.ietf.org/rfc/rfc2516.txt.<br />
PPPOE SET TRANSPORT USERNAME<br />
Syntax PPPOE SET TRANSPORT {|} USERNAME <br />
Description This command sets a (dialout) username on a named transport. The username is<br />
required when PPP negotiation takes place and is supplied to the remote PPP server<br />
for authentication. To apply a positive authentication you must use not only this<br />
command but moreover you also must use PPPOE SET TRANSPORT PASSWORD<br />
and PPPOE SET TRANSPORT WELOGIN.<br />
<br />
To configure correctly an authenticated pppoe connection itʹs necessary send<br />
also the PPPOE SET TRANSPORT WELOGIN command and set the<br />
authentication password using the PPPOE SET TRANSPORT PASSWORD<br />
command..<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 305<br />
name<br />
number<br />
username<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
A name that identifies a user. Together<br />
with the password, this enables the PPP<br />
client to be authenticated by the remote<br />
end. The username will be required by the<br />
PPP server and will be passed to the server<br />
using the PAP or CHAP protocol. It can be<br />
made up of one or more characters and/or<br />
digits. To display the username, use the<br />
PPPOE SHOW TRANSPORT command.<br />
N/A<br />
N/A<br />
N/A<br />
Example --> pppoe set transport pppoe2 username jsmith<br />
See also PPPOE SET TRANSPORT PASSWORD<br />
PPPOE SET TRANSPORT WELOGIN<br />
Syntax PPPOE SET TRANSPORT {|} WELOGIN {NONE|AUTO|PAP|CHAP}<br />
Description This command sets the authentication protocol used to connect to external PPP<br />
servers (dialout).<br />
<br />
To configure correctly an authenticated pppoe connection itʹs necessary set also<br />
the login username using the PPPOE SET TRANSPORT USERNAME command<br />
and set the authentication password using the PPPOE SET TRANSPORT<br />
PASSWORD command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
number<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command.<br />
N/A<br />
N/A
306 Chapter 14 – PPPoE<br />
NONE<br />
AUTO<br />
PAP<br />
CHAP<br />
No authentication method is used.<br />
The authentication protocol used by the<br />
remote PPP server is discovered and used.<br />
Password Authentication Protocol; the<br />
server sends an authentication request to<br />
the remote user dialling in. PAP passes the<br />
unencrypted username and password to be<br />
verified by the server.<br />
Challenge Handshake Authentication<br />
Protocol; the server sends an authentication<br />
request to the remote user dialling in.<br />
CHAP passes the encrypted username and<br />
password to be verified by the server.<br />
None<br />
Example --> pppoe set transport pppoe2 welogin pap<br />
See also PPPOE SET TRANSPORT THEYLOGIN<br />
PPPOE SHOW TRANSPORT<br />
PPPOE LIST TRANSPORTS<br />
PPPOE SHOW TRANSPORT<br />
Syntax PPPOE SHOW TRANSPORT {|}<br />
Description This command displays the following information about an existing PPPoE<br />
transport:<br />
• Description<br />
• Interface number<br />
• Server - dialin status<br />
• Headers - the data format that the transport can accept or receive<br />
• SVC status (false)<br />
• Local IP address<br />
• Subnet mask<br />
• Remote IP address<br />
• Remote DNS<br />
• Propagate DNS to client (true or false)<br />
• Propagate DNS to relay (true or false)<br />
• Create route (true or false)<br />
• Specific route (true or false)<br />
• Route netmask
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 307<br />
• Dialout Username<br />
• Dialout Password<br />
• Dialout Authentication method<br />
• Dialin Authentication method<br />
• LCP Max Configure<br />
• LCP Max Failure<br />
• LCP Max Terminate<br />
• LCP Echo Period<br />
• Autoconnect status (true or false)<br />
• User Idle Timeout setting (in minutes)<br />
• Access concentrator<br />
• Service name<br />
• Port name<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
Name<br />
number<br />
A name that identifies an existing PPPoE<br />
transport. To display transport names, use<br />
the PPPOE LIST TRANSPORTS command.<br />
A number that identifies an existing PPPoE<br />
transport. To display transport numbers,<br />
use the PPPOE LIST TRANSPORTS<br />
command<br />
N/A<br />
N/A<br />
Example --> pppoe show transport pppoe2<br />
PPP Transport: pppoe2<br />
Description: pppoe2<br />
Interface ID: 1<br />
Server: false<br />
Headers: learn<br />
SVC: false<br />
Local IP: 0.0.0.0<br />
Subnet mask: 0.0.0.0<br />
Remote IP: 0.0.0.0<br />
Remote DNS: 0.0.0.0<br />
Propogate DNS to client: true To relay: true<br />
Create route: true<br />
Specific route: false<br />
Route netmask: 0.0.0.0
308 Chapter 14 – PPPoE<br />
Dialout username:<br />
Dialout password:<br />
Dialout auth.: none<br />
Dialin auth.: none<br />
LCP Max. Conf.: 10<br />
LCP Max. Failure: 5<br />
LCP Max Terminate: 2<br />
LCP Echo Every: 10<br />
Autoconnect: true<br />
User Idle Timeout: 30<br />
Access Conc.:<br />
Service name: y<br />
See also PPPOE LIST TRANSPORTS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 309<br />
Chapter 15<br />
VoIP Analogue and Digital access ports<br />
Introduction<br />
This chapter describes the telephony services available on the Residential Gateway<br />
and the support for analog voice ports (FXS) and digital ISDN interfaces (Basic<br />
Rate).<br />
The AT-RG613TX(J) supports two FXS ports to connect up to 2 standard DTMF<br />
analogue telephones. A further PSTN port (AT-RG613TXJ model only) is available<br />
to connect the Residential Gateway to a Central Office or to an analog PBX.<br />
The PSTN port (also named FXO port) allows a VoIP end-point to reach an external<br />
phone connected to the PSTN network. In the opposite direction, the FXO port<br />
allows an incoming PSTN call to reach a VoIP end-point.<br />
The same FXO port acts like lifeline when the unit is powered off (or when no local<br />
user is registered to a SIP server or Gatekeeper), connecting the local phones to the<br />
PSTN operator.<br />
The AT-RG623TX supports two ISDN Basic Rate ports to connect up to 8 ISDN<br />
terminals to the residential gateway. In this case the two ports use the same S/T bus<br />
and ISDN terminals can use one port or the other one independently. Up to 2<br />
simultaneous calls can be made on the S/T bus (the limitation is due to the Basic<br />
Rate service that support only two bearer channels of 64Kbps each).<br />
The access port module controls both analog and digital ports:<br />
• on FXS models it detects hardware events like off-hook and DTMF key press and<br />
controls hardware functions like tone generation and ringing.<br />
• on the ISDN models it implements the ISDN protocol conforming to Euro ISDN<br />
standards (ETSI).<br />
The access port module also performs the voiceband processing required to<br />
interface analog or PCM voice, fax with data networks incorporating packet-based<br />
protocols such as Internet protocol (IP).<br />
This system incorporates a voiceband processor (VoIP DSP) that operates in<br />
conjunction with analog interface circuitry and with the unit main processor (CPU).
310 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
The unit main processor implements packet network protocol stacks and system<br />
control, while the voice-band processor primarily performs mathematically<br />
intensive DSP algorithms.<br />
The following are the features available on the Voice system:<br />
Voice Encoding/Decoding<br />
• G.711 A-/µ-law 64 Kbps PCM Speech CODEC<br />
• G.729A/B CS-ACELP Speech CODEC with VAD<br />
• G.726-16Kbps, G.726-24Kbps, G.726-32Kbps and G.726-40Kbps<br />
• T.38 support for transmission of T.30 fax signals into T.30 Intenet Fax Protocol<br />
(IFP) packets.<br />
Voice Quality Management<br />
• Jitter Buffer Management<br />
• Fixed Gain Control configurable independently on TX and RX transmission<br />
• G.168 Line Echo Cancellation (programmable 8 ms – 32 ms tail length)<br />
• Voice Activity Detection (VAD)<br />
• Comfort Noise Generation (CNG)<br />
Telecom Tones Management<br />
• Tone Generation<br />
• DTMF Detection<br />
Analog Ports<br />
On the AT-RG613TX model two FXS ports are provided.<br />
On the AT-RG613TXJ model two FXS ports are provided plus one FXO port.<br />
Connection from the unit to standard DTMF analogue telephones is made via two<br />
RJ11 8-pin connectors.<br />
The analog front-end circuit is designed to support 5REN (Ring Equivalent<br />
Number) load on each FXS port.<br />
An additional RJ11 connector is available as pass-through PSTN port when the unit<br />
is not powered. In this case an internal relay connects the first FXS port to the PSTN<br />
port, allowing the user to make external calls to a Central Office or to analog PBX.<br />
Analog ports are able to reproduce telecom tones similar to the tones provided from<br />
a regional central office or local exchange, simply by selecting the desired country<br />
via the VOIP EP SET COUNTRY command.<br />
Digital Ports<br />
The AT-RG623TX supports two ISDN Basic Rate (BRI) ports.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 311<br />
A block diagram of a typical Basic Rate Access circuit is shown in Figure 14.<br />
Analogue<br />
Phone/FAX<br />
TA<br />
S/T BUS<br />
NT1<br />
U BUS<br />
ISDN<br />
switch<br />
(LT)<br />
ISDN Switched<br />
Nework<br />
ISDN<br />
switch<br />
(LT)<br />
Digital<br />
Phone/FAX<br />
Digital<br />
Phone/FAX<br />
Figure 14. ISDN Basic Access.<br />
The S/T loop may be shared by a number of TEIs and TAs communicating with a<br />
single Network Termination (NT). The U loop may be several kilometres in length and<br />
runs between the NT and the Line Termination (LT) on the ISDN service providerʹs<br />
premises. The letters S, T and U refer to reference points in the ITU-T<br />
Recommendations defining ISDN.<br />
With respect to a standard ISDN Basic Rate Access, the AT-RG623TX is designed to<br />
operate like an NT (LT-S) termination offering access to a VoIP network instead of<br />
an ISDN network.<br />
The Basic Rate access available on the AT-RG623TX consists of 2 data channels<br />
(called B1 and B2) of 64Kbps each; plus one signaling channel (called the D channel)<br />
of 16Kbps. This allows two simultaneous calls (outgoing or/and incoming) to be in<br />
operation at the same time.<br />
ISDN BRI Physical Layer<br />
Connection from the S/T loop to a TE is made via two RJ45 8-pin connectors. From<br />
the system point of view they are one logical port and access a resource named<br />
isdn0.The four centre pins on the connector are used for the transmit and receive<br />
pairs.<br />
Power may be transferred from the NT to TEs (or vice-versa) over the signal wires<br />
or one of the outer pairs.<br />
The S/T loop portion of the circuit support up to 8 ISDN terminals according to a<br />
point-to-multipoint bus topology over a strictly limited distance and is intended for<br />
operation within the customer premises. The S/T bus can be up to 100 meters long<br />
using 100 ohm UTP cable (only a short passive S bus). In this case there are no<br />
strong constraints between the minimum distance between TEs , but 10 meters<br />
between TEs is the suggested separation.<br />
The S/T bus must be terminated with a 100 ohm resistive load at both ends. One 100<br />
ohm termination is already installed inside the AT-RG623TX unit. The other 100<br />
ohm termination must be installed during network configuration.
312 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
See ETS 300 012-1 Annex A - A.2.1 Point-to-multipoint - A.2.1.1 Short passive bus for<br />
more technical details..<br />
ISDN Layer 2 - LAPD<br />
LAPD is the Link Access Protocol for the ISDN D channel, as defined by ITU-T<br />
Recommendation Q.921.<br />
It is a layer 2, or data link layer, protocol which is used for communication between<br />
ISDN Terminal Equipment and Network Equipment (e.g. the AT-RG623). LAPD is<br />
responsible for providing addressing, flow control, and error detection for higher<br />
layer users of the ISDN D channel. A single D channel is able to support multiple<br />
layer 3 entities. LAPD is not used on the ISDN B channels.<br />
In normal operation the LAPD module will not require any configuring since the<br />
default configuration will allow it to function fully. The default for BRI interfaces is<br />
to operate with automatic TEI (Terminal Endpoint Identifier) assignment.<br />
ISDN Layer 3 - Call Control<br />
ISDN layer 3 is responsible for maintaining and controlling ISDN calls.<br />
The call control module uses ITU-T Recommendation Q.931 to set up and tear down<br />
ISDN calls.<br />
Common<br />
Port creation and configuration (if necessary) are part of the VoIP system<br />
configuration steps required in order to receive or make calls, as illustrated in Figure<br />
15.<br />
Default Configuration<br />
Signalling Protocol<br />
Config. (SIP/H323)<br />
Forwarding Database<br />
Access Port Creation<br />
Users Creation<br />
Access Port Config.<br />
Users Binding<br />
Incoming/<br />
Outgoing Calls<br />
Figure 15. VoIP subsystem configuration - basic steps.<br />
By default, analog or digital access ports are not configured in the system when the<br />
unit starts from a factory default configuration.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 313<br />
If a port is not defined, no users can be added to the port and therefore no incoming<br />
calls can be received and no outgoing calls can be made.<br />
On the AT-RG623, attempting to make an outgoing call through an undefined<br />
digital port will result in a DISCONNECT message from the unit. A busy tone may<br />
be reproduced locally on the ISDN telephone depending on phone model (typically<br />
the busy tone is generated for few seconds and then the user is invited to replace the<br />
handset).<br />
On the AT-RG613, attempting to make a call through an undefined analogue port<br />
will result in absence of any tone provided by the unit.<br />
To create a port, use the command VOIP EP CREATE and to enable a port use the<br />
command VOIP EP ENABLE.<br />
Each access port has a unique identifier used during the VOIP EP CREATE<br />
command. Depending on the model, the following ports and port identifiers can be<br />
used:<br />
Model VoIP port type VoIP port identifier<br />
AT-RG613TX al-fxs-del tel1, tel2<br />
AT-RG613TXJ<br />
al-fxs-del<br />
tel1, tel2<br />
al-fxo-del<br />
tel3<br />
AT-RG623TX dl-bri-lt-s tel<br />
To disable a port use the VOIP EP DISABLE command.<br />
Port configuration<br />
Port configuration is managed through the VOIP EP SET command.<br />
It is used to configure the following subsections:<br />
• Digit Map/Dial Mask<br />
• Voice Coder/Decoder<br />
• Voice Quality Management<br />
• Telecom Tones Management<br />
Digit Map<br />
The Digit Map is a rule used by the access port to understand when dialing is is to<br />
be considered completed and the dialed number is ready to be processed by the call<br />
control layer. It works for outgoing calls (in the direction from user to VoIP<br />
network).<br />
A digit map is defined either by a (case insensitive) ʺstringʺ or by a list of strings.<br />
Each string in the list is an alternative numbering scheme, specified either as a set of<br />
digits or timers, or as an expression over which the port will attempt to find a<br />
shortest possible match. The following constructs can be used in each digit map:<br />
DTMF: A digit from ʹ0ʹ to ʹ9ʹ or one of the symbols ʺAʺ, ʺBʺ, ʺCʺ, ʺDʺ, ʺ#ʺ, or ʺ*ʺ.
314 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
Timer: The symbol ʹTʹ matching the timer expiry. The symbol ʹTʹ at the end of Digit<br />
Map indicates that if user has not dialed a digit for a time longer than the value of<br />
the inter-digit time, the dialed number shall be considered complete. If the symbol T<br />
appearsi in the middle of digit map expression is not considered and skipped<br />
during expression evaluation.<br />
Wildcard:<br />
The symbol ʺxʺ, which matches any digit (ʺ0ʺ to ʺ9ʺ).<br />
Range: One or more DTMF symbols enclosed between square brackets (ʺ[ʺ and ʺ]ʺ).<br />
Subrange: Two digits separated by a hyphen (ʺ-ʺ) which matches any digit<br />
between and including the two. The subrange construct can only be used inside a<br />
range construct, i.e., between ʺ[ʺ and ʺ]ʺ.<br />
Position: A period (ʺ.ʺ), which matches an arbitrary number, including zero,<br />
of occurrences of the preceding construct.<br />
Also, note that the whole Digit Map shall not exceed 128 characters.<br />
Let’s consider an example where the user in an office wants to call a co-worker’s 3-<br />
digit extension. The Digit Map is defined in such a way that after the user has<br />
entered 3 digits, the called number is processed.<br />
The command to set the Digit Map could look as follows:<br />
voip ep analogue set prt0 digitmap xxx<br />
This Digit Map specifies that after the user has entered any three digits, the call is<br />
placed. Itʹs possible to refine this Digit Map by including a range of digits. For<br />
example, if all extensions in the user company begin with 2, 3, or 4, the<br />
corresponding Digit Map command could look as:<br />
voip ep analogue set prt0 digitmap [2-4]xx<br />
If the number dialed begins with anything other than 2, 3, or 4, the call is rejected<br />
and a busy tone is generated. Another way to achieve the same result would be:<br />
voip ep analogue set prt0 digitmap [234]xx<br />
It is possible to combine two or more expressions in the same Digit Map by using<br />
the “|” operator, which is equivalent to OR. The left-most expression has<br />
precedence over the other expressions<br />
Let’s consider the case of a choice: the Digit Map must check if the number is<br />
internal (an extension), or external (a local call). Assuming that dialling “9” makes<br />
an external call, the Digit Map could be defined with the command:<br />
voip ep analogue set prt0 digitmap ([2-4]xx|9[2-9]xxxxxx)<br />
In this case the Digit Map checks if the number begins with 2, 3, or 4 and the<br />
number has 3 digits<br />
If not, it checks if the number begins with 9 and the second digit is any digit<br />
between 2 and 9 and the number has 7 digits<br />
It may sometimes be required that users dial the “#” or “*” to make calls.<br />
This can be easily incorporated in a Digit Map with the command:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 315<br />
voip ep analogue set prt0 digitmap xxxxxxx#|xxxxxxx*<br />
The “#” or “*” character could indicate users must dial the “#” or “*” character at the<br />
end of their number to indicate it is complete.<br />
When processing the outgoing call the call control layer removes any ʹ#ʹʹ, ʹ*ʹ and ʹTʹ<br />
symbols from the dialed number.<br />
Dial Mask<br />
The Dial Mask specifies the number of digits that must be removed from the dialed<br />
number before checking the dialed number against the Digit Map.<br />
When a user digits the called party number, the number of digits specified by the<br />
dial mask parameter are removed from the selection This feature is available both<br />
on AT-RG613TX and AT-RG623TX models.<br />
On AT-RG613TXJ model, dial mask acts both on fxs ports and on the fxo port.<br />
On the fxo port dial mask works only far calls in the direction PSTN to VoIP thus<br />
only on incoming calls on fxo port.<br />
Voice Coder/Decoder<br />
The Voice system makes use of a specific DSP with an embedded sigma-delta<br />
Coder/Decoder to process voice and data from/to access ports.<br />
Different codec types are available in order to satisfy the requirements of different<br />
environments.<br />
Itʹs possible to specify more than one codec type for each port using the command<br />
VOIP EP SET CODECS.<br />
The codec specified at the leftdmost ens of the codec list has precedence over the<br />
other codecs.<br />
The signaling protocol (SIP or H323) will negotiate the active codec based on the<br />
capabilities supported by the other peer involved in the VoIP connection.<br />
In the case of local calls, codec negotiation is performed locally by the call control<br />
layer.<br />
The following codecs are available on the AT-RG613, AT-RG623 and AT-RG656<br />
units:<br />
• g711a<br />
• g711u<br />
• g729<br />
• g726-16<br />
• g726-24<br />
• g726-32<br />
• g726-40<br />
(G.711 A law)<br />
(G.711 µ law)<br />
(G.729)<br />
(G.726 16kbps)<br />
(G.726 24kbps)<br />
(G.726 32kbps)<br />
(G.726 40kbps)<br />
• T.38
316 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
A brief description of each codec is provided below, with some notes about quality<br />
and performance.<br />
G.711 µ/A-law 64 Kbps PCM Speech codec<br />
The G.711 codec is specified by ITU-T and consists of two similar non-uniform pulse<br />
code modulation (PCM) schemes called µ.law and A-law. A-law is commonly used<br />
in Europe and µ-law is commonly used in North America and Japan.<br />
Α-law and µ-law are waveform codecs, which logarithmically quantise each input<br />
sample. Fine quantisation steps are used for the low level amplitudes, which occur<br />
more frequently in speech signals. Much coarser quantisation steps are used for<br />
large amplitude signals.<br />
The digitised, linear PCM input signals (13 and 14 bits respectively) sampled at an 8<br />
KHz sampling rate are converted into an 8-bit compressed floating-point PCM<br />
representation for a total bit rate equal to 64Kbps<br />
The G.711 codec is very simple, has very low delay, and results in high quality<br />
speech known as ʺtollʺ quality. G.711 requires trivial processor resources but its high<br />
bit rate generally precludes its use in systems where bandwidth or storage space is a<br />
concern.<br />
G.729 A/B CS-ACELP Speech codec<br />
The G.729 codec is specified by ITU-T and consists of a Conjugate Structure<br />
Algebraic CELP (CS-ACELP) analysis-by-synthesis algorithm that results in a<br />
compressed bit rate of 8 kbps.<br />
The algorithmic delay (block processing size) is 10 ms (80 samples), but the G.729<br />
algorithm also incorporates a 5 ms look-ahead resulting in a 15 ms delay for the<br />
encoder. The complexity is high. It results in good speech quality, with a MOS value<br />
of 4.0.<br />
There is a lower complexity version of the original G.729 described in G.729 Annex<br />
A.<br />
G.729 Annex A is interoperable with G.729, however it requires less than half the<br />
processing requirements in terms of MIPS. The speech quality for G.729A is very<br />
close to that of G.729 except it performs slightly worse in environments with<br />
background noise and in the presence of bit errors. The MOS for G.729A is 3.9.<br />
G.729 Annex B describes a voice activity detection/comfort noise generation<br />
algorithm that can be operated in conjunction with either of the speech coders to<br />
further reduce the bit rate during periods of silence.<br />
G.726 ADPCM Speech codec<br />
The G.726 codec is specified by ITU-T and is an adaptative differential pulse code<br />
modulation (ADPCM) speech-coding algorithm capable to operate at 16kbps,<br />
24kbps, 32 kbps and 40kbps.<br />
For 32 kbps operation, each input voice sample is converted into a 4-bit quantized<br />
difference signal resulting in a compression ratio (respect to a reference G711 codec)<br />
of 2:1. For the 24kbps and 40kbps operation the quantized difference signal is 3 bits
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 317<br />
and 5 bits, respectively. At 32kbps ADPCM has a low delay and is considered ʺtollqualityʺ,<br />
i.e. virtually indistinguishable from A-law and u-law for a single encoding.<br />
At lower bit rates, especially below 24kbps, speech quality is dramatically reduced.<br />
T.38 support<br />
AT-RG613, AT-RG623 and AT-RG656 are designed to support the transmission of<br />
T.30 fax signals using T.38 Internet Fax Protocol (IFP) packets.<br />
Even if T.38 is reported under the codec supported list in AT-RG600 family, T.38 is<br />
not properly a codec but is a technical solution to map FAX signals into a dedicated<br />
IP protocol that overrides the limitations (e.g. signal distortion) that are present<br />
when faxes are sent using codec designed for speech applications.<br />
When T.38 support is enabled and a fax must be sent or received, the Residential<br />
Gateway tries firstly to negotiate T.38 support with the called or calling end-point<br />
respectively. If this fails, automatically the Residential Gateway switches to a non<br />
compressed codec like G711u or G711a.<br />
Voice Quality Management<br />
To increase the voice/data quality additional parameters can be set on the voice<br />
system DSP.<br />
The following settings are available on both the AT-RG613, AT-RG623 and AT-<br />
RG656 models. A brief description of each setting is provided below:<br />
Jitter Buffer<br />
Voice-over-packet systems require a “jitter” buffer to compensate for delay variation<br />
due to packet queuing, network congestion, or other network phenomena.<br />
This delay results when a complete voice packet ready for transmission cannot be<br />
immediately transmitted. This may be because packets from other equal priority<br />
voice channels are also ready to be transmitted or because a lower priority data<br />
packet has started transmission and must be allowed to complete.<br />
This delay is dependent on a number of factors including the minimum size data<br />
packet, the number of other voice channels, which could simultaneously produce a<br />
packet, and the willingness to reduce network packet efficiency by transmitting a<br />
partially filled packet.<br />
The jitter buffer is designed to prevent data starvation on the packet-receiving end,<br />
and may dynamically adjust its buffer depth depending on network performance<br />
characteristics.<br />
The voice DSP make use of one shared output buffer in the encode direction. The<br />
system is designed to zeroing the process latency for ports using the same codec<br />
algorithm.<br />
In the case that access ports are not using the same codec, this optimization is less<br />
effective and some channel data could suffer a variable delay (jitter).
318 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
On the decoding path (from VoIP network to access port), voice/data packets are<br />
managed in separate jitter buffers (one for each access port) to compensate<br />
efficiently for jitter injected by the network.<br />
The command VOIP EP SET JITTERDELAY is used to specify the jitter delay. The<br />
delay parameter represents the delay in milliseconds that the jitter buffer waits<br />
before it transmits the data samples that are collected from the VoIP network.<br />
Volume Gain Control<br />
To adjust volume gain appropriate to the operational environment, itʹs possible to<br />
set the gain on the Tx direction (from phone/user to AT-RG600/VoIP network)<br />
separately from that in the Rx direction (from AT-RG600/VoIP network to<br />
phone/user) to values between –48dB and +24dB.<br />
Gain control can be set separately on each access port on AT-RG613TX(J)<br />
modelswhile on AT-RG623 model it acts simultanously on both B1 and B2 channels.<br />
G.168 Line Echo Cancellation (8 ms – 32 ms tail length)<br />
International Telecommunications Union, Telecommunications sector (ITU-T) G.168<br />
specifies the requirements for line echo cancellers.<br />
A line echo canceller is an adaptive FIR filter, which operates upon frames of<br />
digitised data, and is typically used in telephony applications to cancel the electrical<br />
echo caused by 2-to-4 wire conversion hybrids. In this case an impedance mismatch<br />
in this device will almost always result in some “talker echo”, which is a reflection<br />
of the received analog signal back to the far-end talker on the transmission path.<br />
The longer the delay through the system, the less the echo amplitude that can be<br />
tolerated before being annoying to the talker. Thus, since virtually all VoIP systems<br />
add delay to the system, line echo cancellation is almost always required.<br />
Acceptable values for Line Echo Cancellation are 8, 16 and 32 msec.<br />
A value of 0 for Line Echo Cancellation results is turning off the Line Echo<br />
Cancellation feature.<br />
Voice Activity Detection (VAD) / Comfort Noise<br />
Generation (CNG)<br />
Voice activity detection / comfort noise generation (VAD/CNG) are two algorithms<br />
designed to reduce bit rates beyond the nominal values defined by the selected<br />
codec when no speech is present.<br />
Silence detection algorithms simply replace periods when speech is not detected<br />
with silence, allowing the output to mute. This solution has the advantage of greatly<br />
reducing the average bit-rate, but many listeners find it disconcerting when the<br />
background noise is completely muted during periods when they are talking.<br />
Therefore during periods of non-speech, it is generally preferable to produce some<br />
amount of “comfort noise” (CNG) which sounds similar to the speaker’s<br />
background noise.<br />
VAD/CNG features are embedded in codec G.729 algorithms, while they are<br />
separate proprietary algorithms when used in conjunction with the G.711 codec.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 319<br />
Telecom Tones Management<br />
On analog access models (AT-RG213) the called party number is provided to the<br />
unit through DTMF dialed digits.<br />
On digital access models (AT-RG623) the called party number is provided to the<br />
Residential Gateway using EnBlock mode or Multi Frame mode.<br />
Using the EnBlock Mode, the called party number is provided to the Residential<br />
Gateway in the Q.931 SETUP message during the call establishment phase.<br />
Using the Multi Frame Mode, the called party number is provided to the Residential<br />
Gateway both in the Q.931 SETUP message and in one or more INFO messages<br />
during the call establishment phase.<br />
DTMF Relay<br />
DTMF Relay is a protocol dependent solution used to transfer DTMF tones when in<br />
a call a low compressed codec is used. In this case, if tone is managed similarly to<br />
voice, the tone may be distorted during compression and decompression phase and<br />
therefore a specific application must be used to support DTMF transfer.<br />
• DTMF Relay under SIP protocol<br />
To prevent tone distortion, during call establishment, the endpoints negotiate a<br />
specific RTP packet payload (Named Telephone Event) used only to tranfer DTMF<br />
tones as specified in RFC 2833 (section 3).<br />
When the Residential Gateway attempts to establish a call, it adds to the capabilities<br />
list the RTP packet Named Telephone Event only if a compressed codec (g726 or<br />
g729ab) has been configured for the Voice access port involved in the call.<br />
- Then if the call is established using an uncompressed codec (i.e. g711u or<br />
g711a), the Residential Gateway will send DTMF tone in-band (independently<br />
if the called endpint supports or not RTP packet Named Telephone Event) on<br />
the same path used for voice.<br />
- If the call is established using a compressed codec, the Residential Gateway will<br />
send DTMF tones using RTP packet Named Telephone Event only if the called<br />
end-point supports it, otherwise it switches to the same path used for voice<br />
(accepting DTMF distorsion).<br />
When the Residential Gateway is going to accept a call, it adds to the capabilities list<br />
the RTP packet Named Telephone Event only if a compressed codec (g726 or<br />
g729ab) has been configured for the Voice access port involved in the call.<br />
- Then if the call is established using an uncompressed codec (i.e. g711u or<br />
g711a), the Residential Gateway will send DTMF tone in-band (independently<br />
if the caller endpint supports or not RTP packet Named Telephone Event) on<br />
the same path used for voice.<br />
- If the call is established using a compressed codec, the Residential Gateway will<br />
send DTMF tones using RTP packet Named Telephone Event only if the caller<br />
end-point supports it, otherwise it switches to the same path used for voice<br />
(accepting DTMF distorsion).<br />
Inter-digit time / Inter-digit critical time
320 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
The Inter-digit time is the maximum acceptable time between the dialing of one<br />
digit and the next. If a time greater than the inter-digit time elapses after the dialing<br />
of a digit, dialling is considered complete.<br />
The Inter-digit time value is used by the timer ʹTʹ in the digit map expression.<br />
To change the value of the inter-digit time use the VOIP EP SET IDT-PARTIAL<br />
command<br />
The Inter-digit critical time is the maximum acceptable time between the off-hook<br />
event and the dialing of the first digit. If a time greater than this has elapsed since<br />
off-hook and dialing has not yet started, then the connection is closed and a busy<br />
tone is generated.<br />
To change the value of the inter-digit critical time use the VOIP EP SET IDT-<br />
CRITICAL command<br />
Off-hook time / On-hook time<br />
Off-hook time and On-hook time are configuration parameters available only for<br />
analog access ports.<br />
Off-hook time is the minimum time (msec) that the analog line must stay in off-hook<br />
before the system detects the off-hook state.<br />
On-hook time is the minimum time (msec) that the analog line must stay in onhook<br />
before the system detects the on-hook state.<br />
Country-specific Telecom Tones<br />
The AT-RG613, AT-RG623 and AT-RG656 are able to reproduce the same countryspecific<br />
telecom tones used by Central Offices or Foreign Exchanges simply by<br />
selecting the preferred country via the VOIP EP SET COUNTRY command.<br />
Dial Tone, Busy Tone and Ring Back Tone refer to ITU-T E.180 specifications as<br />
reported in the following table:<br />
Country Dial Tone Busy Tone Ring Back Tone<br />
Frequency<br />
(Hz)<br />
Cadence<br />
(msec)<br />
Frequency<br />
(Hz)<br />
Cadence<br />
(msec)<br />
Frequency<br />
(Hz)<br />
Cadence<br />
(msec)<br />
Australia 425x25 Continuous 400 375 - 375 400x17<br />
400 - 200 -<br />
400 - 2000<br />
Austria 450 Continuous 450 300 - 300 450 1000 - 5000<br />
Belgium 425 Continuous 425 500 - 500 425 1000 - 3000<br />
Canada 350+440 Continuous 480+620 500 - 500 440+480 2000 - 4000<br />
China 450 Continuous 450 350 - 350 450 1000 - 4000<br />
France 440 Continuous 440 500 - 500 440 1500 - 3500<br />
Germany 425 Continuous 425 480 - 480 425<br />
250 - 4000 -<br />
1000 - 4000<br />
-<br />
1000 - 4000<br />
Israel 400 Continuous 400 500 - 500 400 1000 - 3000<br />
Italy 425<br />
600 - 1000 -<br />
200 - 200<br />
425 200 - 200 425 1000 - 4000<br />
Japan 400 Continuous 400 500 - 500 400x16 1000 - 2000
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 321<br />
New<br />
400 - 200 -<br />
400 Continuous 400 500 - 500 400 + 450<br />
Zealand<br />
400 - 2000<br />
Norway no tone // 425 1000 - 4000 425 500 - 500<br />
Russia no tone // 425 400 - 400 425 800 - 3200<br />
Singapore 425 Continuous 425 750 - 750 425x24<br />
400 - 200 -<br />
400 - 2000<br />
Spain 425 Continuous 425 200 - 200 425 1500 - 3000<br />
Sweden 425 Continuous 425 250 - 250 425 1000 - 5000<br />
Turkey 450 Continuous 450 500 - 500 450 2000 - 4000<br />
United<br />
400 - 200 -<br />
350+440 Continuous 400 375 - 375 400+450<br />
Kingdom<br />
400 - 2000<br />
United<br />
States<br />
350+440 Continuous 480+620 500 - 500 440+480 2000 - 4000<br />
<br />
Note:Frequency in Hz:<br />
f1xf2 means f1 is modulated by f2<br />
f1+f2 is the juxtaposition of two frequencies f1 and f2 without modulation.<br />
Cadence in seconds: ON - OFF<br />
Telecom Tones Customization<br />
Itʹs possible customize some tones or signal using the VOIP EP SIGNALING<br />
commands.<br />
The user must define a new signaling using the command VOIP EP SIGNALING<br />
CREATE and defining a name, the type, the frequency and the cadence. Afterward,<br />
the defined signaling must be added to the desired analog port using the command<br />
VOIP EP SIGANLING ADD.<br />
Type of the signaling<br />
The customizable signaling type are:<br />
• Busy Tone<br />
• Dial Tone<br />
• Ring Signal (CAI – Call Alerting Signal)<br />
• Ringback tone<br />
Frequency of the signaling<br />
A customized signaling with a type set to ring can be only set with a single<br />
frequency (f1).<br />
A customized signaling with a type set to busy-tone, dial-tone or ringback-tone can<br />
be set using three different way to build the tones:<br />
• Single frequency (f1)<br />
• Two modulated frequency (f1x f2)<br />
• Two juxtapositioned frequency (f1+f2)
322 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
A customized signaling can be set with up to three different tones that will be<br />
executed in sequency. The timing of the sequence depend on the cadence setting.<br />
Cadence of the signaling<br />
The cadence od the signaling can be set specifying some time intervals where the<br />
signale is present or not. Each time interval is prefixed by “+” or “-“ indicating,<br />
respectively, the signal issue or a pause.<br />
Sub-sequences may by provisioned specifying the number of cycles followed by the<br />
cadence inside brackets. The item “continuous” is available for infinite repetition or<br />
time. See the examples in the VOIP EP SIGNALING CREATE commands.<br />
Port enable/disable<br />
Itʹs possible to temporarily disable a port by using the VOIP EP<br />
ANALOGUE/DIGITAL DISABLE command.<br />
Any call originated from, or sent to, a user attached to a disabled access port is<br />
discharged.<br />
On the AT-RG613, no dial tone is provided through a disabled analogue port.<br />
On the AT-RG623, attempting to make an outgoing call through a disabled digital<br />
port will result in a DISCONNECT message from the unit. A busy tone may be<br />
reproduced locally on the ISDN telephone depending on phone model (typically the<br />
busy tone is generated for few seconds and then the user is invited to replace the<br />
handset).<br />
When a port is disabled, each user added to the port starts to un-register from the<br />
Location Server (SIP signaling protocol) or Gatekeeper (H323 signaling protocol).<br />
To change the port status from disabled to enabled, use the VOIP EP<br />
ANALOGUE/DIGITAL ENABLE command.<br />
As soon the port is enabled all the users attached to the port automatically restart<br />
the process of registration with the location server or gatekeeper.<br />
To show the users attached to a port, use the VOIP EP ANALOGUE/DIGITAL<br />
SHOW command.<br />
To show the user registration status, use the VOIP USER SHOW command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 323<br />
VoIP EP Command <strong>Reference</strong><br />
This section describes the commands available on the Residential Gateway to create,<br />
configure and manage access ports (also called end points - EP).<br />
Two types of port are defined: analogue and digital. The syntax for both analogue<br />
and digital ports is described below. If not otherwise stated, command parameters<br />
apply both to analogue and digital ports.<br />
If particular parameters or commands specific only for one type of port, this will be<br />
explicitly indicated in the description.<br />
voip ep CLI commands<br />
The table below lists the VOIP EP commands provided by the CLI:<br />
Command<br />
VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SET CNG<br />
VOIP EP SET CODECS<br />
VOIP EP SET COUNTRY<br />
VOIP EP SET DIALMASK<br />
VOIP EP SET DIALMODE<br />
VOIP EP SET DIGITMAP<br />
VOIP EP SET IDT-CRITICAL<br />
VOIP EP SET IDT-PARTIAL<br />
VOIP EP SET JITTERDELAY<br />
VOIP EP SET LEC<br />
VOIP EP SET OFFHOOK-TIME<br />
VOIP EP SET ONHOOK-TIME<br />
VOIP EP SET RXGAIN<br />
VOIP EP SET TXGAIN<br />
VOIP EP SET VAD<br />
VOIP EP SHOW<br />
VOIP EP SIGNALING ADD<br />
VOIP EP SIGNALING CREATE
324 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
VOIP EP SIGNALING DELETE<br />
VOIP EP SIGNALING LIST<br />
VOIP EP SIGNALING REMOVE<br />
VOIP EP SIGNALING SHOW
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 325<br />
VOIP EP CREATE<br />
Syntax VOIP EP ANALOGUE CREATE TYPE PHYSICAL-PORT <br />
VOIP EP DIGITAL CREATE TYPE PHYSICAL-PORT <br />
Description This command adds a named access port and binds it to a physical access port.<br />
If the physical resource is already assigned to another named port, an error is raised<br />
and the command fails.<br />
<br />
<br />
<br />
On AT-RG613TX model, up 2 analogue ports can be created with TYPE al-fxsdel<br />
and PHYSICAL-PORT tel1 or tel2.<br />
On AT-RG613TXJ model, up 2 analogue ports with TYPE al-fxs-del and<br />
PHYSICAL-PORT tel1 or tel2 can be created plus a third analog port with TYPE<br />
al-fxo-del and PHYSICAL-PORT tel3.<br />
On AT-RG623TX model, only one digital port can be created with TYPE dl-brilt-s<br />
and PHYSICAL-PORT tel. On AT-RG623TX model, only one digital port can<br />
be created with TYPE dl-bri-lt-s and PHYSICAL-PORT tel.<br />
Options The following table gives the range of values for each option that can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
port-type<br />
An arbitrary name that identifies the access<br />
port. It can be made up of one or more<br />
letters or a combination of letters and digits,<br />
but it cannot start with a digit. The<br />
maximum length is fixed to 16 characters.<br />
This is the user access typology served by<br />
the physical port; the possible values<br />
depend on the model (analog access or<br />
digital access).<br />
Valid values are:<br />
al-fxs-del: analog line, foreign exchange<br />
subscriber side, direct exchange line.<br />
al-fxo-del: analog line, foreign exchange<br />
office side, direct exchange line.<br />
dl-bri-lt-s: digital line, ISDN basic rate<br />
interface, LT-S termination.<br />
N/A<br />
N/A
326 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
phy-port-id<br />
This is the physical port providing the<br />
access to VoIP network. It may assume the<br />
following values depending on port-type<br />
selection:<br />
tel1: first analog fxs port N/A<br />
tel2: second analog fxs port<br />
tel3: analog fxo port (only AT-RG613TXJ<br />
model)<br />
tel1: digital isdn port<br />
Example<br />
--> voip ep analogue create prt0 type al-fxs-del physical-port tel1<br />
--> voip ep digital create prt0 type dl-bri-lt-s physical-port tel1<br />
See also VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SET<br />
VOIP EP SHOW<br />
VOIP EP DELETE<br />
Syntax VOIP EP ANALOGUE DELETE <br />
VOIP EP DIGITAL DELETE <br />
Description This command deletes the named access port created previously using the VOIP EP<br />
CREATE command.<br />
<br />
Deleting an access port where one or more users are attached, causes a<br />
deregistration procedure to be invoked for the users attached to the removed<br />
port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing access<br />
port. To display existing access port names,<br />
use the VOIP EP LIST command.<br />
N/A<br />
Example --> voip ep analogue delete prt0<br />
--> voip ep digital delete prt0<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SET
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 327<br />
VOIP EP SHOW<br />
VOIP EP DISABLE<br />
Syntax VOIP EP ANALOGUE DISABLE <br />
VOIP EP DIGITAL DISABLE <br />
Description This command disables the physical port referred to by the named access port.<br />
Use the VOIP EP SHOW command to retrieve the Operational Status of a specific<br />
port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing access<br />
port. To display existing access port names,<br />
use the VOIP EP LIST command.<br />
N/A<br />
Example --> voip ep analogue disable prt0<br />
--> voip ep digital disable prt0<br />
See also VOIP EP CREATE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SET<br />
VOIP EP SHOW<br />
VOIP EP ENABLE<br />
Syntax VOIP EP ANALOGUE ENABLE <br />
VOIP EP DIGITAL ENABLE <br />
Description This command enables the physical port referred to by the named access port.<br />
Use the VOIP EP SHOW command to retrieve the Operational Status of a specific<br />
port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing access<br />
port. To display existing access port names,<br />
use the VOIP EP LIST command.<br />
N/A
328 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
Example --> voip ep analogue enable prt0<br />
--> voip ep digital enable prt0<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP LIST<br />
VOIP EP SET<br />
VOIP EP SHOW<br />
VOIP EP LIST<br />
Syntax VOIP EP ANALOGUE LIST<br />
VOIP EP DIGITAL LIST<br />
Description This command lists the named access port defined in the system using the VOIP EP<br />
CREATE command.<br />
The following information is displayed:<br />
• end-point (analogue or digital) ID value<br />
• end-point (analogue or digital) name<br />
• physical port index<br />
• physical port typology<br />
Example --> voip ep analogue list<br />
Gateway access ports:<br />
ID | Name | Physical Port | Typology<br />
-----|------------|------------------|------------------<br />
1 | prt0 | tel1 | al-fxs-del<br />
--------------------------------------------------------<br />
--> voip ep digital list<br />
Gateway access ports:<br />
ID | Name | Physical Port | Typology<br />
-----|------------|------------------|------------------<br />
1 | prt0 | isdn0 | dl-bri-lt-s<br />
--------------------------------------------------------<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP SET<br />
VOIP EP SHOW<br />
VOIP EP SET CFWD<br />
Syntax CFWD all-calls
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 329<br />
VOIP EP SET CFWD ENABLE ALL-CALLS ON-<br />
PREFIX ON-SUFFIX OFF-PREFIX <br />
CFWD on-busy<br />
VOIP EP SET CFWD ENABLE ON-BUSY ON-PREFIX<br />
ON-SUFFIX OFF-PREFIX <br />
CFWD on-no-answer<br />
VOIP EP SET CFWD ENABLE ON-NO-ANSWER ON-<br />
PREFIX ON-SUFFIX OFF-PREFIX <br />
VOIP EP SET CFWD ON-NO-ANSWER TIMEOUT<br />
<br />
Description Call ForWarDing (CFWD) enables to forward incoming calls to another destination<br />
previously decided in a static way. The feature must be enabled on the RG6xx via<br />
the command line, and can be set for following cases:<br />
• CFWD for all incoming calls<br />
• CFWD in case of busy state of the receiver of the call<br />
• CFWD in case of no answer. In this case a timer can be set. The timer allows users<br />
to decide a time threshold after which the call is considered not answered.<br />
In order to have all rules set at the same time, you need to digit on the phone<br />
keyboard the ʺon-prefix + + on-suffixʺ. You can see changes on the<br />
RG6xx by typing the following command:<br />
voip ep show cfwd <br />
Then, to disable it on the phone, you need to digit the ʺoff-prefixʺ. If you want to<br />
disable it on the RG600, type the following command:<br />
voip ep disable cfwd <br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
on-prefix<br />
on-suffix<br />
A name that identifies an existing access<br />
port. To display access port names, use the<br />
VOIP EP LIST command.<br />
The sequence to be composed on the phone<br />
keyboard, before the phone number to<br />
where the call will be forwarded<br />
The sequence to be composed on the phone<br />
keyboard after the prefix and the phone<br />
N/A<br />
N/A<br />
N/A
330 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
number<br />
off-suffix<br />
secs<br />
The sequence to be composed by the user<br />
on his phone keyboard to disable the call<br />
forwarding.<br />
The time threshold after which the call is<br />
considered not answered<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set tel1 cfwd enable all-calls on-prefix *123* on-suffix # offprefix<br />
**<br />
--> voip ep analogue set tel1 cfwd enable on-busy on-prefix<br />
*123* on-suffix # off-prefix **<br />
--> voip ep analogue set tel1 cfwd enable on-no-answer on-prefix *123* on-suffix<br />
# off-prefix **<br />
voip ep analogue set tel1 cfwd on-no-answer timeout 10<br />
See also<br />
VOIP EP SHOW CFWD<br />
VOIP EP DISABLE<br />
VOIP EP SET CNG<br />
Syntax VOIP EP ANALOGUE SET CNG <br />
VOIP EP DIGITAL SET CNG <br />
Description This command enables or disables the comfort noise generation feature.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
status<br />
A name that identifies an existing access<br />
port. To display access port names, use the<br />
VOIP EP LIST command.<br />
The status of the comfort noise generation<br />
feature.<br />
Valid values are:<br />
off: CNG disabled<br />
on: CNG enabled<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 cng off<br />
--> voip ep digital set prt0 cng off<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 331<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET CODECS<br />
Syntax VOIP EP ANALOGUE SET CODECS <br />
VOIP EP DIGITAL SET CODECS <br />
Description This command sets the codec capability list for an existing access port.<br />
<br />
T38 support must always be selected together with another speech codec<br />
(G711a/u or G726 or G729ab).<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
codec-list<br />
A name that identifies an existing access<br />
port. To display access port names, use the<br />
VOIP EP LIST command.<br />
The value or a comma separated list of<br />
values defining the compression algorithm<br />
on codec.<br />
Valid values are:<br />
g711a: referring to G.711 a-law PCM<br />
g711u: referring to G.711 µ-law PCM<br />
g729ab: referring to G.729A/B 8 kbps<br />
ACELP A/B<br />
g726-16: referring to G.726 16 kbps<br />
g726-24: referring to G.726 24 kbps<br />
g726-32: referring to G.726 32 kbps<br />
g726-40: referring to G.726 40 kbps<br />
T38<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 codecs g711a,g711u,g729ab<br />
--> voip ep digital set prt0 codecs g711a,g711u,g729ab<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET COUNTRY<br />
Syntax VOIP EP ANALOGUE SET COUNTRY
332 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
VOIP EP DIGITAL SET COUNTRY <br />
Description This command sets dial tone, busy tone and ring back tone frequencies and<br />
cadences on the physical port referred to by the named access port, appropriately<br />
for the selected country.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
country<br />
A name that identifies an existing access<br />
port. To display access port names, use the<br />
VOIP EP LIST command.<br />
The national signalling system and defines<br />
the analogue signaling criteria in use.<br />
Valid values are:<br />
australia<br />
austria<br />
belgium<br />
canada<br />
china<br />
france<br />
germany<br />
israel<br />
italy<br />
japan<br />
newzealand<br />
norway<br />
russia<br />
singapore<br />
spain<br />
sweden<br />
turkey<br />
uk<br />
usa<br />
N/A<br />
N/A<br />
Example --> voip ep analogue(digital) set prt0 country USA<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET DIALMASK<br />
Syntax VOIP EP ANALOGUE SET DIALMASK
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 333<br />
VOIP EP DIGITAL SET DIALMASK <br />
Description This command sets the dial mask value (number of chars to be removed from the<br />
dialed number) on the physical port referred to by the named access port.<br />
<br />
On AT-RG613 TXJ FXO port, dial mask works only in the direction PSTN to<br />
FXO port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
digit-number<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The number of digits to be removed from<br />
the dialed number.<br />
Acceptable values are from 0 to 3.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 dialmask 2<br />
--> voip ep digital set prt0 dialmask 2<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET DIALMODE<br />
Syntax VOIP EP ANALOGUE SET DIALMODE {AUTO | DTMF | PULSE<br />
10PPS|20PPS}<br />
Description This command sets the dial mode used by analogue ports. On the fxo port, if<br />
DIALMODE is set to AUTO, the Residential Gateway examines the type of<br />
signalling mode supported on the PSTN line and set the port signalling to the same<br />
mode automatically. On fxs ports, if DIALMODE is set to AUTO, the Residential<br />
Gateway uses the same signalling mode selected for fxo port.<br />
If PULSE mode is selected, itʹs also necessary select the pulse rate: 10pps or 20pps.<br />
Example --> voip ep analogue set prt0 dialmode auto<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE
334 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET DIGITMAP<br />
Syntax VOIP EP ANALOGUE SET DIGITMAP <br />
VOIP EP DIGITAL SET DIGITMAP <br />
Description This command sets the digit map rule on the physical port referred to by the named<br />
access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
digit-map<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The digit map expression. A Digit map<br />
may have up to 32 chars.<br />
The following symbols can be used:<br />
DTMF: A digit from ʹ0ʹ to ʹ9ʹ or one of the<br />
symbols ʺAʺ, ʺBʺ, ʺCʺ, ʺDʺ, ʺ#ʺ, or ʺ*ʺ.<br />
Timer: The symbol ʺTʺ<br />
Wildcard: The symbol ʺxʺ<br />
Range: The symbols ʺ[ʺ and ʺ]ʺ<br />
Subrange: The symbol ʺ-ʺ<br />
Position: The symbol ʺ.ʺ<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 digitmap x.T<br />
--> voip ep digital set prt0 digitmap x.T<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET IDT-CRITICAL<br />
Syntax VOIP EP ANALOGUE SET IDT-CRITICAL <br />
VOIP EP DIGITAL SET IDT-CRITICAL
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 335<br />
Description This command set the Inter-digit critical time on the physical port referred to by the<br />
named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
secs<br />
A name that identifies an existing access<br />
port. To display access port names, use the<br />
VOIP EP LIST command.<br />
The time duration in seconds of the interdigit<br />
critical time. Acceptable values are<br />
from 5secs to 30secs.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 idt-critical 16<br />
--> voip ep digital set prt0 idt-critical 16<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET IDT-PARTIAL<br />
Syntax VOIP EP ANALOGUE SET IDT-PARTIAL <br />
VOIP EP DIGITAL SET IDT-PARTIAL <br />
Description This command sets the Inter-digit time on the physical port referred to by the<br />
named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
secs<br />
A name that identifies an existing access<br />
port. To display existing access port names,<br />
use the VOIP EP LIST command.<br />
The time duration in seconds of the interdigit<br />
time. Acceptable values are from 2secs<br />
to 10secs.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 idt-partial 10<br />
--> voip ep digital set prt0 idt-partial 10<br />
See also VOIP EP CREATE
336 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET JITTERDELAY<br />
Syntax VOIP EP ANALOGUE SET JITTERDELAY <br />
VOIP EP DIGITAL SET JITTERDELAY <br />
Description This command sets the jitter delay value on the port referred to by the named access<br />
port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
msec<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The delay in milliseconds that the jitter<br />
buffer waits before it transmits the data<br />
samples that are collected from the VoIP<br />
network.<br />
Valid values are from 0 to 130msec:<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 jitterdelay 6<br />
--> voip ep digital set prt0 jitterdelay 6<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET LEC<br />
Syntax VOIP EP ANALOGUE SET LEC <br />
VOIP EP DIGITAL SET LEC <br />
Description This command sets the line echo cancellation length on the port referred to by the<br />
named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 337<br />
Option Description Default Value<br />
name<br />
msec<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The line echo cancellation length in milliseconds.<br />
Valid values are 0, 8, 16 and 32 msec.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 lec 16<br />
--> voip ep digital set prt0 lec 16<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET OFFHOOK-TIME<br />
Syntax VOIP EP ANALOGUE SET OFFHOOK-TIME <br />
Description This command set the off-hook time on the port referred to by the named access<br />
port.<br />
Only analog access ports accept off-hook time settings.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
msec<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The off-hook time in millisecond.<br />
Valid values are from 100 to 500msec.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 offhook-time 350<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW
338 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
VOIP EP SET ONHOOK-TIME<br />
Syntax VOIP EP ANALOGUE SET ONHOOK-TIME <br />
Description This command set the on-hook time on the port referred to by the named access<br />
port.<br />
Only analog access ports accept on-hook time settings.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
msec<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The on-hook time in millisecond.<br />
Valid values are from 100 to 500msec.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 onhook-time 250<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET RXGAIN<br />
Syntax VOIP EP ANALOGUE SET RXGAIN <br />
VOIP EP DIGITAL SET RXGAIN <br />
Description This command sets the input gain (in the direction from AT-RG600/VoIP network to<br />
phone/user) of the port referred to by the named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
gain<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The value of rx gain in dB.<br />
Valid values are from –48dB to +28dB.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 rxgain –3.0
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 339<br />
--> voip ep digital set prt0 rxgain –3.0<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET TXGAIN<br />
Syntax VOIP EP ANALOGUE SET TXGAIN <br />
VOIP EP DIGITAL SET TXGAIN <br />
Description This command sets the output gain (in the direction from phone/user to AT-<br />
RG600/VoIP network) of the port referred to by the named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
gain<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The value of tx gain in dB.<br />
Valid values are from –48dB to +28dB.<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 txgain –3.0<br />
--> voip ep digital set prt0 txgain –3.0<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SET VAD<br />
Syntax VOIP EP ANALOGUE SET VAD <br />
VOIP EP DIGITAL SET VAD <br />
Description This command enables or disables the voice activity detection feature on the port<br />
referred to by the named access port.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).
340 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
Option Description Default Value<br />
name<br />
status<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
The status of the VAD feature.<br />
Valid values are:<br />
on VAD enabled<br />
off VAD disabled<br />
N/A<br />
N/A<br />
Example --> voip ep analogue set prt0 vad off<br />
--> voip ep digital set prt0 vad off<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SHOW<br />
VOIP EP SHOW<br />
Syntax VOIP EP ANALOGUE SHOW <br />
VOIP EP DIGITAL SHOW <br />
Description This command displays the following information about a named access port:<br />
• Physical Port<br />
• Typology<br />
• Operational status<br />
• Comfort Noise Generation (CNG)<br />
• Codec Capabilities<br />
• Country<br />
• Critical-digit time<br />
• Inter-digit time<br />
• Dialing Mode (AT-RG613TX and AT-RG613TXJ models)<br />
• Digit map<br />
• Dial mask<br />
• Line Echo Cancellation (AT-RG613TX and AT-RG613TXJ models)<br />
• Jitter Delay<br />
• Voice Activity Detection (VAD)<br />
• Off-hook time (AT-RG613TX and AT-RG613TXJ models)
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 341<br />
• On-hook time (AT-RG613TX and AT-RG613TXJ models)<br />
• Rx gain<br />
• Tx gain<br />
• Attached users<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing access<br />
port. To display the existing access port<br />
names, use the VOIP EP LIST command.<br />
N/A<br />
Example --> voip ep analogue show prt0<br />
--> voip ep analogue show prt0<br />
Gateway access port: prt0<br />
--------------------------------------------------<br />
Physical port:<br />
tel1<br />
Typology:<br />
al-fxs-del<br />
Operational status:<br />
Activated<br />
Confort Noise Generation (CNG): OFF<br />
Codec Capabilities:<br />
G711A,G711U<br />
Country:<br />
Italy<br />
Critical-digit time:<br />
16 Sec.<br />
Inter-digit time:<br />
4 Sec.<br />
Digit map:<br />
x.T<br />
Dial mask: 0<br />
Dial mode:<br />
DTMF<br />
Line Echo Cancellation (LEC): 16<br />
Jitter Delay:<br />
130 mSec.<br />
Voice Activity Detection (VAD): ON<br />
Off-hook time:<br />
250 mSec.<br />
On-hook time:<br />
350 mSec.<br />
Rx gain:<br />
-3.0 dB.<br />
Tx gain:<br />
+0.0 dB.<br />
Attached users:<br />
See also VOIP EP CREATE<br />
VOIP EP DISABLE<br />
VOIP EP DELETE<br />
VOIP EP ENABLE<br />
VOIP EP LIST<br />
VOIP EP SET<br />
VOIP EP SIGNALING ADD<br />
Syntax VOIP EP SIGNALING ADD PORT <br />
Description This command adds a previously created customized signaling to an existing
342 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
endpoint.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
port<br />
A name that identifies an existing<br />
customized signalling created with the<br />
VOIP EP SIGNALING CREATE command.<br />
To display the existing access port names,<br />
use the VOIP EP LIST command.<br />
A name that identifies an existing access<br />
port. To display the existing customized<br />
signalling use the VOIP EP SINALING LIST<br />
command.<br />
N/A<br />
N/A<br />
Example --> voip ep signaling add myring port prt0<br />
See also VOIP EP SIGNALING CREATE<br />
VOIP EP SIGANLING DELETE<br />
VOIP EP SIGANLING LIST<br />
VOIP EP SIGANLING REMOVE<br />
VOIP EP SIGANLING SHOW<br />
VOIP EP SIGNALING CREATE<br />
Syntax VOIP EP SIGNALING CREATE TYPE TIME-OUT <br />
FREQUENCY CADENCE <br />
Description This command creates a new entry in the customized signaling list. Each<br />
customized signaling must have a different . If the customized signaling<br />
already exists, an error message is raised.<br />
The type of the signaling, the used frequency and the cadence must be provided.<br />
The setting of a time-out is optional and is available only for the ring type.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
An arbitrary name that identifies the<br />
customized signaling port. It can be made<br />
up of one or more letters, digit or a<br />
combination of letters and digits. To display<br />
the existing access port names, use the<br />
VOIP EP LIST command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 343<br />
type<br />
secs<br />
frequency<br />
cadence<br />
The class of the customized signalling.<br />
Valid values are:<br />
busy-tone<br />
dial-tone<br />
ring<br />
ringback-tone.<br />
Time interval expressed in seconds. Valid<br />
values are from 1 to 3600 seconds.<br />
One or more (up to three) tones separated<br />
by a “/” char. Each tones can be composed<br />
by one of the following combination of<br />
frequency:<br />
f1 - Single frequency<br />
f1xf2 - f1 is modulated by f2<br />
f1+f2 - f1 is a juxtaposition of f2<br />
Only one frequency can be set on a<br />
signalling with a type set to ring.<br />
Values are in Hz.<br />
A sequence of time intervals to specify if the<br />
signale must be present or not. Each time<br />
interval is prefixed by “+” or “-“ indicating,<br />
respectively, the signal issue or a pause.<br />
Sub-sequences may by provisioned<br />
specifying the number of cycles followed by<br />
the cadence inside brackets. The item<br />
“continuous” is available for infinite<br />
repetition or time. Values are in seconds.<br />
N/A<br />
N/A<br />
N/A<br />
N/A<br />
Example A customized dial tone with a single frequency of 440 Hz always present (with no<br />
pause).<br />
--> voip ep signaling create create dial1 type dial-tone frequency 440 cadence<br />
+continuous<br />
A customized dial tone with a modulated tone (240 Hz modulated by 450 Hz) with<br />
a cadence of +0.4 sec. on, 0.2 sec. off, 0.4 sec. on and 2..6 sec. off.<br />
--> voip ep signaling create create dial2 type dial-tone frequency 240x450 cadence<br />
+0.4-0.2+0.4-2.6<br />
A customized ringback tone with a sequence of three tones followed by a pause.<br />
The three tones are executed in order for 0.4 sec, 0.5 sec and 0.6 sec. The pause is 2.5<br />
sec.<br />
--> voip ep signaling create create rbt type ringback-tone frequency<br />
225x325/424x525/320+480 cadence +0.4+0.5+0.6-2..5<br />
A customized ring signal with a complext cadence. The ring is executed three times<br />
with a cadence of 0.5 sec. on and 0.5 sec. off followed by an infinite cadence of 1 sec<br />
on and 2 sec off. The timeout is set to 180 sec.
344 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
--> voip ep signaling create create myring type ring time-out 180 frequency 25<br />
cadence -3(+0.5-0.5)+continuous(+1.0-2.0)<br />
See also VOIP EP SIGNALING ADD<br />
VOIP EP SIGANLING DELETE<br />
VOIP EP SIGANLING LIST<br />
VOIP EP SIGANLING REMOVE<br />
VOIP EP SIGANLING SHOW<br />
VOIP EP IGNALING DELETE<br />
Syntax VOIP EP SIGNALING DELETE <br />
Description This command deletes an entry in the customized signaling list.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option<br />
name<br />
Description<br />
A name that identifies an existing<br />
customized signalling created with the<br />
VOIP EP SIGNALING CREATE command.<br />
To display the existing access port names,<br />
use the VOIP EP LIST command.<br />
Default Value<br />
N/A<br />
Example --> voip ep signaling create delete dial1<br />
See also VOIP EP SIGNALING ADD<br />
VOIP EP SIGANLING CREATE<br />
VOIP EP SIGANLING LIST<br />
VOIP EP SIGANLING REMOVE<br />
VOIP EP SIGANLING SHOW<br />
VOIP EP SIGNALING LIST<br />
Syntax VOIP EP SIGNALING LIST<br />
Description This command lists all the entries in the customized signaling list defined in the<br />
system using the VOIP EP SIGNALING CREATE command.<br />
The following information is displayed:<br />
• signaling entry ID value<br />
• signaling entry name<br />
• signaling entry type<br />
Example --> voip ep signaling list<br />
Custom Signaling Protocol items:
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 345<br />
ID | Name | Type<br />
-----|------------|---------------------------------------<br />
1 | mydial | dial-tone<br />
2 | mybusy | busy-tone<br />
3 | myring | cai<br />
-----|------------|---------------------------------------<br />
See also VOIP EP SIGNALING ADD<br />
VOIP EP SIGANLING CREATE<br />
VOIP EP SIGANLING DELETE<br />
VOIP EP SIGANLING REMOVE<br />
VOIP EP SIGANLING SHOW<br />
VOIP EP SIGNALING REMOVE<br />
Syntax VOIP EP SIGNALING REMOVE PORT <br />
Description This command removes a previously added customized signaling from an existing<br />
endpoint.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
port<br />
A name that identifies an existing<br />
customized signalling created with the<br />
VOIP EP SIGNALING CREATE command.<br />
To display the existing access port names,<br />
use the VOIP EP LIST command.<br />
A name that identifies an existing access<br />
port. To display the existing customized<br />
signalling use the VOIP EP SINALING LIST<br />
command.<br />
N/A<br />
N/A<br />
Example --> voip ep signaling remove myring port prt0<br />
See also VOIP EP SIGNALING ADD<br />
VOIP EP SIGANLING CREATE<br />
VOIP EP SIGANLING DELETE<br />
VOIP EP SIGANLING LIST<br />
VOIP EP SIGANLING SHOW<br />
VOIP EP SIGNALING SHOW<br />
Syntax VOIP EP SIGNALING SHOW <br />
Description This command shows a previously created customized signaling.<br />
The following information is displayed:
346 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
• signaling entry type<br />
• signaling entry time out<br />
• signaling entry frequency<br />
• signaling entry cadence<br />
• signaling entry attached endpoints<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing<br />
customized signalling created with the<br />
VOIP EP SIGNALING CREATE command.<br />
To display the existing access port names,<br />
use the VOIP EP LIST command.<br />
N/A<br />
Example --> voip ep signaling show mydial<br />
Custom Signaling Protocol item: mydial<br />
----------------------------------------------------------<br />
Type:<br />
dial-tone<br />
Time-Out:<br />
Frequency: 240x340/425x525/340+480 Hz.<br />
Cadence:<br />
-3(+0.5-0.5)+continuous(+1-1)<br />
Attached ports:<br />
tel1<br />
--><br />
See also VOIP EP SIGNALING ADD<br />
VOIP EP SIGANLING CREATE<br />
VOIP EP SIGANLING DELETE<br />
VOIP EP SIGANLING LIST<br />
VOIP EP SIGANLING REMOVE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 347<br />
VoIP Lifeline Command <strong>Reference</strong><br />
This section describes the commands available on the Residential Gateway to<br />
manage the lifeline port (fxo port).<br />
The following commands are available only on AT-RG613TXJ model.<br />
voip lifeline CLI commands<br />
The table below lists the VOIP LIFELINE commands provided by the CLI:<br />
Command<br />
VOIP LIFELINE DISABLE<br />
VOIP LIFELINE ENABLE<br />
VOIP LIFELINE SHOW<br />
VOIP LIFELINE DISABLE<br />
Syntax VOIP LIFELINE DISABLE<br />
Description This command disable the lifeline feature and in this case the fxo port is used to<br />
offer gateway service.<br />
Outgoing call is forwarded to it on dial selection base, while incoming call may be<br />
forwarded to any internal and external user allowing destination re-dialling. A user,<br />
calling from PSTN, needs two phases to reach the destination; the first dialled<br />
number allows to gain the access to VoIP network and next selection have to be<br />
dialled to reach the final destinationadds a named access port and binds it to a<br />
physical access port.<br />
Example<br />
--> voip lifeline disable<br />
See also VOIP LIFELINE ENABLE<br />
VOIP LIFELINE SHOW<br />
VOIP LIFELINE ENABLE<br />
Syntax VOIP LIFELINE DISABLE<br />
Description This command enable the lifeline support.<br />
If it is enabled the system uses it as back-up line. Serious VoIP network failures like<br />
ethernet link down or location server/gatekeeper unreacheble bring outgoing call to<br />
be forwarded on the network terminated by fxo port. Incoming calls are forwarded<br />
only to local fxs ports.
348 Chapter 15 – VoIP Analogue and Digital Access Ports<br />
Example<br />
--> voip lifeline enable<br />
See also VOIP LIFELINE DISABLE<br />
VOIP LIFELINE SHOW<br />
VOIP LIFELINE SHOW<br />
Syntax VOIP LIFELINE SHOW<br />
Description This command shows the current lifeline status.<br />
See also VOIP LIFELINE DISABLE<br />
VOIP LIFELINE ENABLE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 349<br />
Chapter 16<br />
VoIP SIP<br />
Introduction<br />
This chapter describes the main features of the SIP standard, the protocols<br />
supported, the implementation of the call processes in the AT-RG613, AT-RG623<br />
and AT-RG656 and how to configure and operate the AT-RG613, AT-RG623 and<br />
AT-RG656 to provide, or connect to, a VoIP Network.<br />
SIP Protocol<br />
SIP (Session Initiation Protocol) is a protocol developed to assist in providing<br />
advanced telephony services across the Internet. Internet telephony is evolving from<br />
its use as a ʺcheapʺ (but low quality) way to make international phone calls to a<br />
serious business telephony capability. SIP is one of a group of protocols required to<br />
ensure that this evolution can occur.<br />
SIP is part of the IETF standards process and is modeled upon other Internet<br />
protocols such as SMTP (Simple Mail Transfer Protocol) and HTTP (Hypertext<br />
Transfer Protocol.).<br />
It is used to establish, change and tear down (end) calls between one or more users<br />
in an IP-based network.<br />
In order to provide telephony services there is a need for a number of different<br />
standards and protocols to come together - specifically to ensure transport (RTP),<br />
signalling inter-working with today’s telephony network, to be able to guarantee<br />
voice quality (RSVP, YESSIR), to be able to provide directories (LDAP), to<br />
authenticate users (RADIUS, DIAMETER), and to scale to meet the anticipated<br />
growth curves.<br />
SIP is described as a control protocol for creating, modifying and terminating<br />
sessions with one or more participants. These sessions include Internet multimedia<br />
conferences, Internet (or any IP Network) telephone calls and multimedia<br />
distribution. Members in a session can communicate via multicast or via a mesh of<br />
unicast relations, or via a combination of these.
350 Chapter 16 – VoIP SIP<br />
SIP supports session descriptions that allow participants to agree on a set of<br />
compatible media types. It also supports user mobility by proxying and redirecting<br />
requests to the userʹs current location. SIP is not tied to any particular conference<br />
control protocol.<br />
In essence, SIP has to provide or enable the following functions:<br />
Name Translation and User Location<br />
Ensuring that the call reaches the called party wherever they are located. Carrying<br />
out any mapping of descriptive information to location information. Ensuring that<br />
details of the nature of the call (Session) are supported.<br />
• Feature Negotiation<br />
This allows the group involved in a call (this may be a multi-party call) to agree<br />
on the features supported – recognizing that not all the parties can support the<br />
same level of features. For example video may or may not be supported; as any<br />
form of MIME type is supported by SIP, there is plenty of scope for negotiation.<br />
• Call Participant Management<br />
During a call a participant can bring other users onto the call or cancel<br />
connections to other users. In addition, users could be transferred or placed on<br />
hold.<br />
• Call feature changes<br />
A user should be able to change the call characteristics during the course of the<br />
call. For example, a call may have been set up as ‘voice-only’, but in the course<br />
of the call, the users may need to enable a video function. A third party joining a<br />
call may require different features to be enabled in order to participate in the<br />
call<br />
Protocol Components<br />
There are two components within SIP. The SIP User Agent and the SIP Network<br />
Server. The User Agent is effectively the end system component for the call and the<br />
SIP Server is the network device that handles the signaling associated with multiple<br />
calls.<br />
The User agent itself has a client element, the User Agent Client (UAC) and a server<br />
element, the User Agent Server (UAS.) The client element initiates the calls and the<br />
server element answers the calls. This allows peer-to-peer calls to be made using a<br />
client-server protocol.<br />
The SIP Server element also provides for more than one type of server. There are<br />
effectively three forms of server that can exist in the network - the SIP stateful proxy<br />
server, the SIP stateless proxy server and the SIP re-direct server. The main function<br />
of the SIP servers is to provide name resolution and user location, since the caller is<br />
unlikely to know the IP address or host name of the called party. What will be<br />
available is perhaps an email-like address or a telephone number associated with<br />
the called party. Using this information, the caller’s user agent can identify with a<br />
specific server to ʺresolveʺ the address information – it is likely that this will involve<br />
many servers in the network.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 351<br />
A SIP proxy server receives requests, determines where to send these, and passes<br />
them onto the next server (using next hop routing principals). There can be many<br />
server hops in the network.<br />
The difference between a stateful and stateless proxy server is that a stateful proxy<br />
server remembers the incoming requests it receives, along with the responses it<br />
sends back and the outgoing requests it sends on.<br />
A stateless proxy server forgets all information once it has sent on a request. This<br />
allows a stateful proxy server to fork requests to try multiple possible user locations<br />
in parallel and only send the best responses back. Stateless Proxy servers are most<br />
likely to be the fast, backbone of the SIP infrastructure.<br />
Stateful proxy servers are then most likely to be the local devices close to the User<br />
Agents, controlling domains of users and becoming the prime platform for the<br />
application services.<br />
A re-direct server receives requests, but rather than passing these onto the next<br />
server it sends a response to the caller indicating the address for the called user. This<br />
provides the address for the caller to contact the called party at the next server<br />
directly.<br />
SIP addresses users by an email-like address. Each user is identified through a<br />
hierarchical URL that is built around elements such as a user’s phone number or<br />
host name (for example, SIP:user@company.com). Because of this similarity, SIP<br />
URLs are easy to associate with a user’s e-mail address.<br />
SIP provides its own reliability mechanism and is therefore independent of the<br />
packet layer and only requires an unreliable datagram service.<br />
SIP is typically used over UDP or TCP.<br />
SIP provides the necessary protocol mechanisms so that end systems and proxy<br />
servers can provide services:<br />
• User location<br />
• User capabilities<br />
• User availability<br />
• Call set-up<br />
• Call handling<br />
• Call forwarding, including<br />
• The equivalent of 700-, 800- and 900- type calls<br />
• Call-forwarding no answer<br />
• Call-forwarding busy<br />
• Call-forwarding unconditional<br />
• Other address-translation services<br />
• Callee and calling ʺnumberʺ delivery, where numbers can be any (preferably<br />
unique) naming scheme<br />
• Personal mobility, i.e., the ability to reach a called party under a single, locationindependent<br />
address even when the user changes terminals
352 Chapter 16 – VoIP SIP<br />
• Terminal-type negotiation and selection: a caller can be given a choice how to<br />
reach the party, e.g., via Internet telephony, mobile phone, an answering service,<br />
etc.<br />
• Terminal capability negotiation<br />
• Caller and callee authentication<br />
• Blind and supervised call transfer<br />
• Invitations to multicast conferences<br />
When a user wants to call another user, the caller initiates the call with an invite<br />
request. The request contains enough information for the called party to join the<br />
session. If the client knows the location of the other party it can send the request<br />
directly to their IP address. If not the client can send it to a locally configured SIP<br />
network server. If that server is a proxy server it will attempt to resolve the called<br />
user’s location and send the request to them. There are many ways it can do this,<br />
such as searching the DNS or accessing databases. Alternatively, the server may be a<br />
redirect server that may return the called user location to the calling client for it to<br />
try directly. During the course of locating a user, one SIP network server can, of<br />
course, proxy or redirect the call to additional servers until it arrives at one that<br />
definitely knows the IP address where the called user can be found.<br />
Once found, the request is sent to the user, and from there several options arise. In<br />
the simplest case, the user’s telephony client receives the request—that is, the user’s<br />
phone rings. If the user takes the call, the client responds to the invitation with the<br />
designated capabilities* of the client software and a connection is established. If the<br />
user declines the call, the session can be redirected to a voice mail server or to<br />
another user.<br />
ʺDesignated capabilitiesʺ refers to the functions that the user wants to invoke. The<br />
client software might support videoconferencing, for example, but the user may<br />
only want to use audio conferencing. Regardless, the user can always add<br />
functions—such as videoconferencing, white-boarding, or a third user—by issuing<br />
another invite request to other users on the link.<br />
SIP has two additional significant features. The first is a stateful SIP proxy server’s<br />
ability to split or ʺforkʺ an incoming call so that several extensions can be rung at<br />
once. The first extension to answer takes the call. This feature is handy if a user is<br />
working between two locations (a lab and an office, for example), or where someone<br />
is ringing both a boss and their secretary.<br />
The second significant feature is SIP’s unique ability to return different media types.<br />
Take the example of a user contacting a company. When the SIP server receives the<br />
client’s connection request, it can return to the customer’s phone client via a Web<br />
Interactive Voice Response page (IVR or could use the term Interactive Web<br />
Response or IWR), with the extensions of the available departments or users<br />
provided on the list. Clicking the appropriate link sends an invitation to that user to<br />
set up a call.<br />
SIP Messages<br />
A SIP request message consists of three elements:<br />
• Request Line<br />
• Header
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 353<br />
• Message Body<br />
A SIP response message consists of three elements:<br />
• Status Line<br />
• Header<br />
• Message Body<br />
The Request line and header field define the nature of the call in terms of services,<br />
addresses and protocol features. The message body is independent of the SIP<br />
protocol and can contain anything.<br />
SIP defines the following methods (SIP uses the term ‘method’ to describe the<br />
specification areas):<br />
• Invite<br />
• Bye<br />
• Options<br />
• Ack<br />
invites a user to join a call.<br />
terminates the call between two of the users on a call<br />
requests information on the capabilities of a server<br />
confirms that a client has received a final response to an INVITE<br />
• Register provides the map for address resolution, letting a server know the<br />
location of other users.<br />
• Cancel<br />
ends a pending request, but does not end the call<br />
• The INFO method, for mid-session signalling, is also being added Related<br />
Standards Activity.<br />
AT-RG613, AT-RG623 and AT-RG656 Call Processes<br />
The AT-RG613, AT-RG623 and AT-RG656 can communicate with the following<br />
devices:<br />
• Another VoIP terminal on the IP network, such as another AT-RG613, AT-RG623<br />
and AT-RG656.<br />
• Any LAN SIP endpoint on the IP network, for instance:<br />
• a Soft Phone<br />
• an IP phone directly connected to the IP network<br />
Calls Involving Another Terminal<br />
The following example shown in Figure 16 illustrates how to reach a phone or fax<br />
on another AT-RG613/AT-RG623TX terminal.
354 Chapter 16 – VoIP SIP<br />
SIP IP Phone<br />
VoIP Network<br />
Analog Phone<br />
(or Digital Phone)<br />
A<br />
B<br />
Analog Phone<br />
(or Digital Phone)<br />
AT-RG613<br />
(or AT-RG623)<br />
AT-RG613<br />
(or AT-RG623)<br />
SIP Server<br />
Figure 16. Phone --> AT-RG613/RG623 (A) --> AT-RG613/RG623 (B) --> Phone<br />
A user makes a call with the phone connected to an AT-RG613/AT-RG623, which in<br />
turn contacts another AT-RG613/ AT-RG623, which completes the connection to the<br />
phone which is attached to it.<br />
Calls Involving a Terminal and a SIP Endpoint<br />
The following examples illustrate how a phone connected to an AT-RG613/AT-<br />
RG623TX terminal can communicate with a LAN SIP endpoint on the IP network.<br />
Such endpoints could be:<br />
• a Soft Phone<br />
• an IP phone directly connected to the IP network<br />
A user makes a call with the phone connected to an AT-RG613/AT-RG623, which<br />
reaches the corresponding LAN SIP endpoint on the IP network (Figure 17).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 355<br />
SIP IP Phone<br />
VoIP Network<br />
Analog Phone<br />
(or Digital Phone)<br />
A<br />
B<br />
Analog Phone<br />
(or Digital Phone)<br />
AT-RG613<br />
(or AT-RG623)<br />
AT-RG613<br />
(or AT-RG623)<br />
SIP Server<br />
Figure 17. Phone --> AT-RG613/RG623 (A) --> SIP IP Phone<br />
VoIP SIP Servers, Users & Forwarding Database<br />
Introduction<br />
The VoIP SIP subsystem on AT-RG613, AT-RG623 and AT-RG656 residential<br />
gateways is based on the concept of SIP servers, local users, call forwarding rules<br />
and access ports.<br />
The following section describe SIP servers, local users and forwarding database.<br />
• SIP servers are servers where local users register themselves (Location Servers)<br />
and where calls are routed (Proxy Servers) when an outgoing call is going to be<br />
set up.<br />
• Users are entities uniquely identified in the system by a name with an associated<br />
phone number. The Userʹs phone number represents the userʹs address on the<br />
local system.<br />
• Forwarding rules are local call routing rules used to forward an incoming call on<br />
a local user to a remote system or to a remote user. Forwarding rules are also<br />
used for locally originated calls when the called party is not a local user and the<br />
call must be routed to a specific contact that typically is different from the proxy<br />
server.<br />
Definition of SIP servers, users, and optionally forwarding database rules, are three<br />
basic steps in correctly configuring the VoIP SIP subsystem (see Figure 18).
356 Chapter 16 – VoIP SIP<br />
Default Configuration<br />
SIP Signaling Protocol<br />
Configuration<br />
Access Port Creation<br />
Users Creation<br />
Location Servers<br />
Forwarding Database<br />
Access Port Config.<br />
Proxy Servers<br />
Users Binding<br />
Incoming/<br />
Outgoing Calls<br />
Figure 18. VoIP subsystem configuration - basic steps.<br />
SIP Servers<br />
Location Servers<br />
The SIP module needs to know where locally defined users attempt to register their<br />
contact in the network.<br />
The VOIP SIP LOCATIONSERVER CREATE command is used to set the location<br />
servers used to register users.<br />
Itʹs possible to define more that one location server in order to increase system<br />
reliability in case the first location server doesnʹt work or cannot be reached.<br />
The system will attempt to register the local users on all the location servers<br />
available in the location server list (see VOIP SIP LOCATIONSERVER LIST<br />
command) until the first registration phase achieves a positive result. Once a<br />
successful registration with a server has been achieved no further registration<br />
requests will be performed even if other location servers are defined.<br />
In the case that more than one location server is defined in the system, itʹs possible<br />
to set a location server as Master: all the registration requests will start from the<br />
master location server independently of the position of the server in the location<br />
servers list. In the case of registration failure on the Master server, the Location<br />
Server list will be used as server address table where registration requests will be<br />
sent.<br />
<br />
If no location servers are defined, the system starts trying to use the server<br />
addresses defined in the Proxy Server list as a location server.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 357<br />
<br />
If users are defined without specify the user domain (see VOIP SIP USER<br />
CREATE command), the user domain will be automatically associated to the<br />
location server address where the user has been registered.<br />
Proxy Servers<br />
The SIP module needs to know which proxy server must be used when an outgoing<br />
call cannot be processed by a local number or by a well defined forwarding rule but<br />
must resolved by an external proxy server.<br />
The VOIP SIP PROXYSERVER CREATE command is used to inform the system<br />
about the proxy servers that can be contacted when an outgoing call is going to be<br />
established.<br />
Similarly to location servers, itʹs possible to define more that one proxy server in<br />
order to increase system reliability in case the first proxy server doesnʹt work or<br />
cannot be reached.<br />
The system will attempt to contact all the proxy servers available in the proxy server<br />
list (see VOIP SIP PROXYSERVER LIST command) until the first server answers to<br />
the INVITE request. In that case no further INVITE requests are sent to the other<br />
proxy servers even if the called user cannot be reached.<br />
In the case that more than one proxy server is defined in the system, itʹs possible to<br />
set a proxy server as Master: all the INVITE requests will start from the master<br />
proxy server independently of the position of the server in the proxy servers list. In<br />
the case that the Master proxy server cannot be reached, the Proxy Server list will be<br />
used as server address table where INVITE requests will be sent.<br />
<br />
The Proxy Server is also used as registration server if no location servers are<br />
defined.<br />
<br />
If users are defined without specify the user domain (see VOIP SIP USER<br />
CREATE command) and no Location Servers are defined, the user domain will<br />
be automatically associated with the proxy server where the user has been<br />
registered.<br />
Users<br />
The system is designed to support up to 100 entries, shared between users and<br />
forwarding rules.<br />
Users are defined by the VOIP SIP USER CREATE command.<br />
Each user must have an associated user number, composed of an address number<br />
and, optionally, an area code number if a complete E.164 number must be defined.
358 Chapter 16 – VoIP SIP<br />
<br />
Note: In any given system there cannot exist two or more users with the same<br />
area code and address.<br />
In any given system it is allowable to have two or more users with the same<br />
address but different area code or no area code at all.<br />
Users may inform the VoIP network about the location (IP address) where they can<br />
be contacted by registering themselves on the location server defined in the VOIP<br />
SIP LOCATIONSERVER CREATE command. In this way, other endpoints on the<br />
VoIP network can contact each user by simply using the user address.<br />
The domain where users are members is the domain defined in the VOIP SIP USER<br />
CREATE command. If the DOMAIN is not defined, users will get as domain the<br />
address of the Location Server (or Proxy Server if no location servers are defined)<br />
where they are registered.<br />
To know the userʹs registration status use the VOIP SIP USER SHOW command.<br />
The user number used in the location registration messages is the complete user<br />
number: area code + address number.<br />
users and access port<br />
A user needs to be attached to at least one physical port in order to receive or to<br />
make a call.<br />
To attach a user to a physical port use the VOIP SIP USER ADD command.<br />
When a user receives a call, only the access lines where the user is attached are<br />
engaged by the communication.<br />
The same user may be attached to more than one access port. In this case when a call<br />
is made to that user, all the lines on which the user is attached will be used to signal<br />
the incoming call.<br />
To know the physical port where a user is attached, use the VOIP SIP USER SHOW<br />
command<br />
<br />
Note that physical access ports don’t have their own fixed phone number. They<br />
inherit the phone number from the user number of attached users.<br />
More than one user may be attached to the same physical access port and therefore<br />
more than one phone number can be associated to the same physical access port.<br />
If a user receives a call but the physical line where the user is attached is already<br />
involved in another communication (because it is used by another user), the call is<br />
rejected.<br />
When an outgoing call (in the direction user to VoIP network) is made and more<br />
than one user is attached on the access port being used to make the call, the identity<br />
of calling user is deemed to be the first user defined in the list of users attached to<br />
that port.<br />
To know which users are attached to a physical port, use the VOIP EP SHOW<br />
command. All the local users belong to the same domain.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 359<br />
When an access port is deleted from the system, all the users previously attached are<br />
removed from the port.<br />
Removing a user from a port, by using the VOIP SIP USER REMOVE command or<br />
by deleting the access port, results in an un-registration process from the location<br />
server defined during user creation phase.<br />
Forwarding Database (FDB)<br />
The forwarding database is a technical solution implemented on the Residential<br />
Gateway to redirect a call to a different destination address based on the called<br />
party number.<br />
The forwarding database is used by the signaling end-point layer every time the<br />
called end-point cannot be found among the local users. It is used both for<br />
incoming calls from the VoIP network or for outgoing calls generated locally and<br />
directed to a remote end-point.<br />
The forwarding database may collect up to 100 entries (including users).<br />
Forwarding entries are defined by the VOIP SIP FDB CREATE command.<br />
Each fdb entry is uniquely identified by a name and defines the conditions that a<br />
calls must satisfy in order to be routed to the end point specified by fdb entry<br />
parameters.<br />
• When the signaling end-point layer receives a call it retrieves the called end-point<br />
address (called number).<br />
o<br />
o<br />
Typically the called number is defined in the call signaling messages<br />
received from the network (in the To header).<br />
If the call is originated locally, the called number address is equal the dialed<br />
number (unless the anologue/digital endpoint as the dialmask set to a value<br />
different from 0).<br />
• The Called end-point address is searched for among the local user addresses to<br />
check if the recipient of the call is a user on the local system.<br />
• If the called end-point matches the address of a local user, the physical resource<br />
(analog or digital port) associated with the called user starts ringing (if the<br />
resource is available)<br />
• If the called number cannot be found among the local users, the forwarding<br />
database is scanned to look for all the entries matching the called number.<br />
The forwarding algorithm acts differently if the call is originated locally or the<br />
call is an incoming call:<br />
Local originated calls<br />
o<br />
If a match is found, the INVITE message is routed to the IP address defined<br />
in the CONTACT field of the matched fdb entry. The called user domain<br />
will be set to the DOMAIN value (optional) or to the CONTACT value (if no<br />
DOMAIN is specified) defined by the DOMAIN and CONTACT fields in the<br />
fdb entry respectively.
360 Chapter 16 – VoIP SIP<br />
If the fdb entry has defined the FWADDRESS field, the called number is<br />
changed from the dialed number to the number defined in the fdb entry<br />
FWADDRESS field. In this way itʹs possible to dial short numbers that will<br />
be replaced by full qualified numbers in the outgoing calls.<br />
By default, the calling user is the first user defined in the system that is<br />
attached to the outgoing physical port.<br />
o<br />
If no match is found in the forwarding database, the INVITE message is<br />
routed to the first available proxy server (starting from the Master proxy<br />
server if defined) using as called endpoint domain the same domain as the<br />
calling user.<br />
By default, the calling user is the first user defined in the system that is<br />
attached to the outgoing physical port.<br />
Incoming calls<br />
o<br />
If a match is found, a MOVED TEMPORARY message is sent back to the<br />
call originator reporting the contact address defined by the CONTACT field<br />
in the matched fdb entry.<br />
If the fdb entry has defined the FWADDRESS field, the called number is<br />
changed from the dialed number to the number defined in the fdb entry<br />
FWADDRESS field.<br />
o<br />
If no match is found in the forwarding database, the call is discharged.<br />
Address and digit-map<br />
The address field specified in fdb entries can be defined using digit map expressions.<br />
Digit map expressions are used to increase system flexibility when defining<br />
forwarding rules that must mach multiple addresses (the digit map is used also in<br />
the voip access port module).<br />
A digit map is defined either by a (case insensitive) ʺstringʺ or by a list of strings.<br />
Each string in the list is an alternative numbering scheme, specified either as a set of<br />
digits or as an expression to which the called address is compared by the signaling<br />
end-point layer to find the shortest possible match. The following constructs can be<br />
used in each digit map:<br />
Digit: A digit from ʹ0ʹ to ʹ9ʹ<br />
Wildcard: The symbol ʺxʺ which matches any digit (ʺ0ʺ to ʺ9ʺ).<br />
Range: One or more digit symbols enclosed between square brackets (ʺ[ʺ and<br />
ʺ]ʺ).<br />
Subrange: Two digits separated by hyphen (ʺ-ʺ) which matches any digit between<br />
and including the two. The subrange construct can only be used inside<br />
a range construct, i.e., between ʺ[ʺ and ʺ]ʺ.<br />
Position: A period (ʺ.ʺ), which matches an arbitrary number, including zero, of<br />
occurrences of the preceding, construct.<br />
Digit map expressions are typically used when managing locally originated calls.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 361<br />
In this case, using digit map expressions, it is possible to define a generic rule in<br />
such a way that all the calls are routed to a specific contact (e.g. the proxy server)<br />
that will be in charge of proceeding with the call routing.<br />
Digit map expressions are also useful for designing a small network without making<br />
use of any location servers or proxy servers or gatekeepers.
362 Chapter 16 – VoIP SIP<br />
VoIP SIP Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG 623 and<br />
AT-RG656 Residential Gateway to configure and manage the SIP protocol signaling<br />
module.<br />
VoIP sip protocol CLI commands<br />
The table below lists the VOIP SIP PROTOCOL commands provided by the CLI:<br />
Command<br />
VOIP SIP PROTOCOL DISABLE<br />
VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL RESTART<br />
VOIP SIP PROTOCOL SET DEFAULTPORT<br />
VOIP SIP PROTOCOL SET EXTENSION<br />
VOIP SIP PROTOCOL SET NAT<br />
VOIP SIP PROTOCOL SET NETINTERFACE<br />
VOIP SIP PROTOCOL SET ROUNDTRIPTIME<br />
VOIP SIP PROTOCOL SET SESSIONEXPIRE<br />
VOIP SIP PROTOCOL SHOW<br />
VOIP SIP PROTOCOL DISABLE<br />
Syntax VOIP SIP PROTOCOL DISABLE<br />
Description This command stops the VoIP SIP signalling protocol and releases all the resources<br />
associated to it.:<br />
• any analogue or digital port defined in the system is removed.<br />
• any user defined in the system is deleted.<br />
• any forwarding entry in the fdb is deleted.<br />
• any SIP server reference (location and proxy) is removed.<br />
This command is typically used when itʹs necessary to change the VoIP signalling<br />
protocol, i.e. from SIP to H323.<br />
To simply restart the SIP module, use the VOIP SIP PROTOCOL RESTART<br />
command. It doesnʹt remove any resources defined under the voip main module.<br />
To enable the SIP module, use the VOIP SIP PROTOCOL ENABLE command.<br />
Example --> voip sip protocol disable<br />
See also VOIP SIP PROTOCOL RESTART<br />
VOIP SIP PROTOCOL ENABLE.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 363<br />
VOIP SIP PROTOCOL ENABLE<br />
Syntax VOIP SIP PROTOCOL ENABLE<br />
Description This command turns on the SIP signaling module.<br />
To bind the SIP module to a specific IP interface use the VOIP SIP PROTOCOL SET<br />
INTERFACE command.<br />
<br />
Binding the SIP module to a specific IP interface defines the value of the<br />
source IP address for signallng and voice packets. SIP URLs with local<br />
reference offer the hostname and the IP address belonging the provisioned<br />
interface.<br />
<br />
The SIP module MUST be enabled in order to create/set analog/digital<br />
ports, users, call forwarding rules and SIP servers..<br />
Example<br />
--> voip sip protocol enable<br />
See also VOIP SIP PROTOCOL SHOW<br />
VOIP SIP PROTOCOL DISABLE<br />
VOIP SIP PROTOCOL RESTART<br />
Syntax<br />
VOIP SIP PROTOCOL RESTART<br />
Description This command restarts the VoIP SIP signaling protocol module.<br />
Any pending and active calls are released.<br />
Users previously registered to location servers start to unregister themselves and<br />
then re-register. on the same location servers.<br />
This command doesnʹt release any resources (users, physical ports and fdb entries)<br />
previously created during module configuration.<br />
Example --> voip sip protocol restart<br />
See also VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL SET DEFAULTPORT<br />
Syntax VOIP SIP PROTOCOL SET DEFAULTPORT <br />
Description This command sets the default listening/sending port used for SIP signaling
364 Chapter 16 – VoIP SIP<br />
messages.<br />
By default, when the SIP module is attached to an IP interface using theVOIP SIP<br />
PROTOCOL SET NETINTERFACE command, the following default value is used:<br />
• defaultport: 5060<br />
<br />
Changing the signaling port causes the SIP module to restart.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ipport<br />
UDP/TCP port number used for signalling<br />
messages.<br />
Available values are from 1026 to 65534.<br />
Only even values can be accepted<br />
5060<br />
Example --> voip sip protocol set defaultport 5060<br />
See also VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL SET EXTENSION<br />
Syntax VOIP SIP PROTOCOL SET EXTENSION <br />
Description This command sets the protocol features extended by the protocol.<br />
<br />
100rel and Session Timer are always supported when requested; setting<br />
“session-timer” the user agent explicitly requires this keep-alive<br />
mechanism. Info method overlaps the event transfer supported by RTP<br />
sessions.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
extension<br />
extensions is a comma separated list of<br />
values defining the protocol extension.<br />
Available values are:<br />
info<br />
session-timer<br />
none<br />
none<br />
Example --> voip sip protocol set extension session-timer
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 365<br />
See also VOIP SIP PROTOCOL SHOW<br />
VOIP SIP PROTOCOL SET NAT<br />
Syntax VOIP SIP PROTOCOL SET NAT {NONE | }<br />
Description This command sets the NAT host reference. Any SIP URLs with local reference is<br />
hidden by the NAT address value.<br />
<br />
Changing the NAT reference causes the SIP module to restart.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
host<br />
The address that must displayed in the local<br />
SIP URL references.<br />
It can be expressed in hostname format or<br />
IPv4 format.<br />
A Hostname can be a maximum of 255<br />
characters long.<br />
None<br />
Example --> voip sip protocol set nat 10.17.90.110<br />
--> voip sip protocol set nat at-rg600.voip.atkk.com<br />
See also VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL SET NETINTERFACE<br />
Syntax VOIP SIP PROTOCOL SET NETINTERFACE <br />
Description This command sets the IP interface used to access the VoIP network.<br />
• Signaling and voice packets will use the Source IP address defined for the<br />
selected interface.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
interface_name<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
N/A<br />
Example --> voip sip protocol set netinterface ip0<br />
See also VOIP SIP PROTOCOL ENABLE
366 Chapter 16 – VoIP SIP<br />
VOIP SIP PROTOCOL SET ROUNDTRIPTIME<br />
Syntax VOIP SIP PROTOCOL SET ROUNDTRIPTIME <br />
Description This command sets the maximum time between the trasmission of a packet and the<br />
reception of the response. If the time expires, protocol primitives are retransmitted.<br />
Retransmission of protocol primitives are useful in case of unreliable transports like<br />
UDP to recover errors in transactions.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
msec<br />
The round trip time in milliseconds.<br />
Acceptable values are from 500 to 4000<br />
msecs.<br />
500<br />
Example --> voip sip protocol set roundtriptime 1000<br />
See also VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL SET SESSIONEXPIRE<br />
Syntax VOIP SIP PROTOCOL SET SESSIONEXPIRE <br />
Description This command sets the largest amount of time that can occur between session<br />
refresh in dialog before the session will be considered timed out..<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
secs<br />
The session expire time in seconds.<br />
Available values are from 30 to 86400 secs<br />
(24 hours).<br />
1800<br />
Example --> voip sip protocol set sessionexpire 180<br />
See also VOIP SIP PROTOCOL SHOW<br />
VOIP SIP PROTOCOL SHOW<br />
Syntax VOIP SIP PROTOCOL SHOW<br />
Description This command displays basic SIP module configuration parameters set by the VOIP
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 367<br />
SIP PROTOCOL SET commands.<br />
Example --> voip sip protocol show<br />
Gateway base protocol: SIP<br />
------------------------------------------------------------<br />
Network interface:<br />
ip0<br />
Default port: 5060<br />
NAT: 10.17.90.110<br />
Round-trip time:<br />
1000 msecs.<br />
Session expire time:<br />
1800 secs.<br />
Extension features:<br />
none<br />
See also VOIP SIP PROTOCOL ENABLE<br />
VOIP SIP PROTOCOL SET MEDIAPORT<br />
VOIP SIP PROTOCOL SET EXTENSION
368 Chapter 16 – VoIP SIP<br />
VoIP SIP Locationserver Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the VoIP SIP<br />
Locationserver module.<br />
voip sip locationserver CLI commands<br />
The table below lists the VOIP SIP LOCATIONSERVER commands provided by the<br />
CLI:<br />
Command<br />
VOIP SIP LOCATIONSERVER CREATE<br />
VOIP SIP LOCATIONSERVER DELETE<br />
VOIP SIP LOCATIONSERVER LIST<br />
VOIP SIP LOCATIONSERVER SET MASTER<br />
VOIP SIP LOCATIONSERVER CREATE<br />
Syntax VOIP SIP LOCATIONSERVER CREATE CONTACT <br />
Description This command creates a new entry in the location servers list. Each location server<br />
must have a different . If the location server already exists, an error message<br />
is raised.<br />
This command is accepted only if the SIP module is already running. See the VOIP<br />
SIP PROTOCOL ENABLE command to turn on the SIP module.<br />
This command doesn’t set the master location server. To define a location server as<br />
master use the VOIP SIP LOCATIONSERVER SET MASTER command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
host<br />
An arbitrary name that identifies the<br />
location server. The name must not be<br />
present already.<br />
The name can be a maximum of 16<br />
characters long; cannot start with a digit<br />
and cannot contain dots ʹ.ʹ or slash symbols<br />
ʹ/ʹ.<br />
The hostname or IPv4 address of the<br />
location server where registrations are sent<br />
host can be a maximum of 256 chars long<br />
(when using hostname format).<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 369<br />
port<br />
transport<br />
The UDP/TCP port on the location server to<br />
which signalling messages are sent.<br />
The protocol used to transport the<br />
signalling messages to the location server.<br />
Possible values are:<br />
udp<br />
tcp<br />
5060<br />
udp<br />
Example<br />
--> voip sip locationserver create default contact 192.168.102.3<br />
See also VOIP SIP LOCATIONSERVER LIST<br />
VOIP SIP LOCATIONSERVER SHOW<br />
VOIP SIP LOCATIONSERVER DELETE<br />
Syntax VOIP SIP LOCATIONSERVER DELETE <br />
Description This command deletes a single location server created using the VOIP SIP<br />
LOCATIONSERVER CREATE command.<br />
To show the list of existing location servers, use the VOIP SIP LOCATIONSERVER<br />
LIST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing location<br />
server (it can also be the ID value associated<br />
with the location server). To display the<br />
existing location servers, use the VOIP SIP<br />
LOCATIONSERVER LIST command.<br />
N/A<br />
Example --> voip sip locationserver delete backuplocserv<br />
See also VOIP SIP LOCATIONSERVER CREATE<br />
VOIP SIP LOCATIONSERVER LIST<br />
VOIP SIP LOCATIONSERVER SHOW<br />
VOIP SIP LOCATIONSERVER LIST<br />
Syntax VOIP SIP LOCATIONSERVER LIST<br />
Description This command lists information about location servers that were added using the<br />
VOIP SIP LOCATIONSERVERS CREATE command. The following information is<br />
displayed:
370 Chapter 16 – VoIP SIP<br />
• server ID numbers<br />
• server names<br />
• Master: whether the server has been set as Master or not. A star symbol<br />
in the field identifies the server as the current location server where local user are<br />
registered.<br />
• Contact: the IP address (IPv4 or hostname format) of the location server<br />
<br />
Note: If a name is longer than 32 chars, the name is shown in a short format<br />
(only the initial part of the name is displayed). To show the full name use the<br />
VOIP SIP LOCATIONSERVER SHOW command, specifying the server ID<br />
instead of server name.<br />
Example<br />
--> voip sip location list<br />
ID | Name | Master | Contact<br />
-----|------------|----------|--------------------------------------------<br />
1 | default | false * | 192.168.1.2<br />
--------------------------------------------------------------------------<br />
See also VOIP SIP LOCATIONSERVER CREATE<br />
VOIP SIP LOCATIONSERVER SHOW<br />
VOIP SIP LOCATIONSERVER SET MASTER<br />
Syntax VOIP SIP LOCATIONSERVER SET MASTER<br />
Description This command sets a location server as Master. If another location server was set<br />
Master previously, the flag Master is removed from the old one.<br />
To show the list of existing location servers, use the VOIP SIP LOCATIONSERVER<br />
LIST command.<br />
Example --> voip sip locationserver set backuplocserv master<br />
See also VOIP SIP LOCATIONSERVER CREATE<br />
VOIP SIP LOCATIONSERVER LIST<br />
VOIP SIP LOCATIONSERVER SHOW
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 371<br />
VoIP SIP Proxyserver Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the VoIP SIP<br />
Proxyserver module.<br />
voip sip proxyserver CLI commands<br />
The table below lists the VOIP SIP PROXYSERVER commands provided by the CLI:<br />
Command<br />
VOIP SIP PROXYSERVER CREATE<br />
VOIP SIP PROXYSERVER DELETE<br />
VOIP SIP PROXYSERVER LIST<br />
VOIP SIP PROXYSERVER SET MASTER<br />
VOIP SIP PROXYSERVER CREATE<br />
Syntax VOIP SIP PROXYSERVER CREATE CONTACT <br />
Description This command creates a new entry in the proxy servers list. Each proxy server must<br />
have a different . If the proxy server already exists, an error message is<br />
raised.<br />
This command is accepted only if the SIP module is already running. See the VOIP<br />
SIP PROTOCOL ENABLE command to turn on the SIP module.<br />
This command doesn’t set the master proxy server. To define a proxy server as<br />
master use the VOIP SIP PROXYSERVER SET MASTER command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
host<br />
port<br />
An arbitrary name that identifies the proxy<br />
server. The name must not be present<br />
already.<br />
The name can be a maximum of 16<br />
characters long; cannot start with a digit<br />
and cannot contain dots ʹ.ʹ or slash symbols<br />
ʹ/ʹ.<br />
The hostname or Ipv4 address of the proxy<br />
server where signaling messages are sent<br />
host can be a maximum of 256 chars long<br />
(when using hostname format).<br />
The UDP/TCP port on the proxy server to<br />
which signalling messages are sent.<br />
N/A<br />
N/A<br />
5060
372 Chapter 16 – VoIP SIP<br />
transport<br />
The protocol used to transport the<br />
signalling messages to the proxy server.<br />
Possible values are:<br />
udp<br />
tcp<br />
udp<br />
Example<br />
--> voip sip proxy create default contact 192.168.102.3<br />
See also VOIP SIP PROXYSERVER LIST<br />
VOIP SIP PROXYSERVER SHOW<br />
VOIP SIP PROXYSERVER DELETE<br />
Syntax VOIP SIP PROXYSERVER DELETE <br />
Description This command deletes a single proxy server created using the VOIP SIP<br />
PROXYSERVER CREATE command.<br />
To show the list of existing proxy servers, use the VOIP SIP PROXYSERVER LIST<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name that identifies an existing proxy<br />
server (it can also be the ID value associated<br />
with the proxy server). To display the<br />
existing proxy servers, use the VOIP SIP<br />
PROXYSERVER LIST command.<br />
N/A<br />
Example --> voip sip proxyserver delete backuplocserv<br />
See also VOIP SIP PROXYSERVER CREATE<br />
VOIP SIP PROXYSERVER LIST<br />
VOIP SIP PROXYSERVER SHOW<br />
VOIP SIP PROXYSERVER LIST<br />
Syntax VOIP SIP PROXY LIST<br />
Description This command lists information about proxy servers that were added using the<br />
VOIP SIP PROXYSERVER CREATE command. The following information is<br />
displayed:<br />
• server ID numbers
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 373<br />
• server names<br />
• Master: whether the server has been set as Master or not. A star symbol in the<br />
field identifies the server as the currect proxy server used by outgoing calls.<br />
• Contact: the IP address (IPv4 or hostname format) of the proxy server<br />
<br />
Note: If a name is longer than 32 chars, the name is shown in a short format<br />
(only the initial part of the name is displayed). To show the full name use the<br />
VOIP SIP PROXYSERVER SHOW command, specifying the server ID instead of<br />
server name.<br />
Example<br />
--> voip sip proxyserver list<br />
ID | Name | Master | Contact<br />
-----|------------|----------|--------------------------------------------<br />
1 | default | false * | 192.168.1.2<br />
--------------------------------------------------------------------------<br />
See also VOIP SIP PROXYSERVER CREATE<br />
VOIP SIP PROXYSERVER SHOW<br />
VOIP SIP PROXYSERVER SET MASTER<br />
Syntax VOIP SIP PROXYSERVER SET MASTER<br />
Description This command sets a proxy server as Master. If another proxy server was set Master<br />
previously, the flag Master is removed from the old one.<br />
To show the list of existing proxy servers, use the VOIP SIP PROXYSERVER LIST<br />
command.<br />
Example --> voip sip proxyserver set backuplocserv master<br />
See also VOIP SIP PROXYSERVER CREATE<br />
VOIP SIP PROXYSERVER LIST<br />
VOIP SIP PROXYSERVER SHOW
374 Chapter 16 – VoIP SIP<br />
VoIP SIP User Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the VoIP SIP User<br />
module.<br />
voip sip user CLI commands<br />
The table below lists the VOIP SIP USER commands provided by the CLI:<br />
Command<br />
VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW<br />
VOIP SIP USER ADD<br />
Syntax VOIP SIP USER ADD PORT <br />
Description This command attaches a user created with the command VOIP SIP USER CREATE<br />
to a named port created with the command VOIP EP CREATE.<br />
As soon as this command is entered, the registration phase starts.<br />
<br />
The system tries to register the user with the location server specified by<br />
the VOIP SIP LOCATIONSERVER CREATE command. If no location<br />
servers are defined, the system tries to register the user with the proxy<br />
server specified by the VOIP SIP PROXYSERVER CREATE command. If no<br />
proxy server are defined, registration phase is not performed until a<br />
location server or proxy server is added to the SIP module.<br />
To display the userʹs registration status and port association use the VOIP SIP USER<br />
SHOW command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
A name that identifies an existing user (it<br />
can be also the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP SIP USER LIST command.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 375<br />
portname<br />
A name that identifies an existing port. To<br />
display the existing ports, use the VOIP EP<br />
LIST command.<br />
N/A<br />
Example --> voip sip user add MrBrown port fxs0<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW<br />
VOIP EP LIST<br />
VOIP SIP USER CREATE<br />
Syntax VOIP SIP USER CREATE ADDRESS [AREACODE ]<br />
[AUTHENTICATION ] [DOMAIN ] [TRANSPORT<br />
]<br />
Description This command creates a new entry in the users list. Each user must have a different<br />
. If the user already exists, an error message is raised.<br />
This command is accepted only if the SIP module is already running. See the VOIP<br />
SIP PROTOCOL ENABLE command to turn on the SIP module.<br />
This command doesn’t bind the user to a physical access port. In order to inform the<br />
system that the user is attached to a specific physical port, the VOIP SIP USER ADD<br />
command must be used.<br />
<br />
If the DOMAIN parameter is not specified, the user domain is set equal to<br />
the location server address (if defined) or proxyserver address (if location<br />
server is not defined).<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
digit-map<br />
An arbitrary name that identifies the user.<br />
The name must not be present already.<br />
The username can be a maximum of 16<br />
characters long; cannot start with a digit<br />
and cannot contain dots ʹ.ʹ or slash symbols<br />
ʹ/ʹ.<br />
The phone number (E.164) used to reach the<br />
user.<br />
The address can be 32 characters long.<br />
N/A<br />
N/A
376 Chapter 16 – VoIP SIP<br />
area-number<br />
login<br />
password<br />
host<br />
transport<br />
The prefix number to be dialed before the<br />
destination number. Valid characters are<br />
only numerical characters. The area number<br />
can be a maximum of 10 digits long.<br />
The user name used during the<br />
authentication phase. The login can be a<br />
maximum of 32 characters long.<br />
The same rules defined for the username<br />
field also apply here, except the login can<br />
start with a digit.<br />
The password used during the<br />
authentication phase. The password can be<br />
a maximum of 16 characters long.<br />
The same rules defined for the username<br />
field also apply here, except the password<br />
can start with a digit.<br />
The domain address in hostname format or<br />
IPv4 format.<br />
The domain can be a maximum of 255<br />
characters long.<br />
The transport protocol used to contact the<br />
user. Valid values are:<br />
udp<br />
tcp<br />
empty<br />
empty<br />
empty<br />
empty<br />
udp<br />
Example<br />
--> voip sip user create MrBrown address 12345 locationserver 192.168.102.3<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW<br />
VOIP SIP USER DELETE<br />
Syntax VOIP SIP USER DELETE <br />
Description This command deletes a single user created using the VOIP SIP USER CREATE<br />
command.<br />
To show the list of existing users, use the VOIP SIP USER LIST command.<br />
As soon this command is entered, the deregistration phase starts (REGISTER<br />
request) to the location server (registar) removing the user from the user list on the<br />
server.<br />
Options The following table gives the range of values for each option which can be specified
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 377<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
A name that identifies an existing user (it<br />
can also be the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP SIP USER LIST command.<br />
N/A<br />
Example --> voip sip user delete MrBrown<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW<br />
VOIP SIP USER LIST<br />
Syntax VOIP SIP USER LIST<br />
Description This command lists information about users that were added using the VOIP SIP<br />
USER CREATE command. The following information is displayed:<br />
• user ID numbers<br />
• user names<br />
• Area Codes<br />
• Addresses<br />
<br />
Note: If a user name is longer than 32 chars, the name is shown in a short format<br />
(only the initial part of the name is displayed). To show the full name use the<br />
VOIP SIP USER SHOW command, specifying the user ID instead of user name.<br />
Example<br />
--> voip sip user list<br />
ID | Name | Area Code | Address<br />
---- |------------|------------------|------------------------------------<br />
1 | MrBrown | | 12345<br />
---- |------------|------------------|------------------------------------<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW
378 Chapter 16 – VoIP SIP<br />
VOIP SIP USER REMOVE<br />
Syntax VOIP SIP USER REMOVE PORT <br />
Description This command remove a single user from the port where it was added with the<br />
VOIP SIP USER ADD command.<br />
Removing a user from a port results in an un-registration request to the location<br />
server.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
portname<br />
A name that identifies an existing user (it<br />
can also be the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP SIP USER LIST command.<br />
A name that identifies an existing port. To<br />
know the ports where the user is added, use<br />
the VOIP SIP USER SHOW command.<br />
N/A<br />
N/A<br />
Example --> voip sip user remove MrBrown port fxs0<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW<br />
VOIP SIP USER SHOW<br />
Syntax VOIP SIP USER SHOW <br />
Description This command displays the following information about a named user:<br />
• Address<br />
• Area Code<br />
• Domain<br />
• Authetication (login:password)<br />
• Transport<br />
• Attached ports<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 379<br />
Option Description Default Value<br />
username<br />
A name that identifies an existing user. To<br />
display the existing users, use the VOIP SIP<br />
USER LIST command.<br />
N/A<br />
Example --> voip sip user show MrBrown<br />
Gateway user: MrBrown<br />
--------------------------------------------------------------<br />
Address: 12345<br />
Area Code (AC):<br />
Domain: 192.168.102.3<br />
Authentication: charlie:123charlie<br />
Transport:<br />
State:<br />
registered (expire time: 2864 Sec.)<br />
Attached ports: port0<br />
See also VOIP SIP USER ADD<br />
VOIP SIP USER CREATE<br />
VOIP SIP USER DELETE<br />
VOIP SIP USER LIST<br />
VOIP SIP USER REMOVE<br />
VOIP SIP USER SHOW
380 Chapter 16 – VoIP SIP<br />
VoIP SIP FDB Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage the FDB module.<br />
voip sip fdb CLI commands<br />
The table below lists the VOIP SIP FDB commands provided by the CLI:<br />
Command<br />
VOIP SIP FDB CREATE<br />
VOIP SIP FDB DELETE<br />
VOIP SIP FDB LIST<br />
VOIP SIP FDB SHOW<br />
VOIP SIP FDB CREATE<br />
Syntax VOIP SIP FDB CREATE ADDRESS CONTACT <br />
[DOMAIN ] [FWADDRESS ]<br />
Description This command creates a new entry in the forwarding database (FDB).<br />
ADDRESS is the called address expected to be received from the calling end-point in<br />
order to forward the call to the CONTACT.<br />
CONTACT is the host reference where the call is forwarded. The contact-host part is<br />
the default to form the URL domain (Request-URI, From and To fields).<br />
The flag proxy modifies the rule to make the Request-URI: if it is present then the<br />
Request-URI domain gets the value from the contact-host part of CONTACT<br />
parameter otherwise the current call domain will be used.<br />
The DOMAIN assigns the call domain and it is used to format the ʺToʺ and ʺFromʺ<br />
headers. It is optional and the contact host part is used if it is not set.<br />
The FWADDRESS replaces the destination address of the call. It is optional and it is<br />
used to make a short selection rule (e.g. dialed number 01 corresponds to<br />
00390224141121)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
An arbitrary name that identifies this<br />
specific fdb rule. The name must not be<br />
present already.<br />
The fdb name can be a maximum of 16<br />
characters long.<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 381<br />
digit-map<br />
contact-host<br />
port<br />
transport<br />
proxy<br />
host<br />
tel-number<br />
The called user address (i.e. phone number)<br />
expected to be received.<br />
It can be a digit map expression as<br />
described in section 0.<br />
The digit-map can be a maximum of 32<br />
chars long.<br />
The hostname or IPv4 address of the remote<br />
end-point where call must be routed.<br />
Contact-host can be a maximum of 256<br />
chars long (when using hostname format).<br />
The UDP/TCP port on the contact host to<br />
which signalling messages are sent.<br />
The protocol used to transport the<br />
signalling messages to the contact host.<br />
Possible values are:<br />
udp<br />
tcp<br />
If proxy is specified, the contact host is<br />
considered to be a proxy server, otherwise<br />
the contact-host is considered to be another<br />
SIP end-point (e.g. another AT-RG613, AT-<br />
RG623 and AT-RG656 unit)<br />
The domain assigned to the redirected call.<br />
It can be a hostname or IPv4 address.<br />
Host can be a maximum of 256 chars long<br />
(when using hostname format).<br />
Is the new number to which the call is<br />
redirected.<br />
N/A<br />
N/A<br />
5060<br />
udp<br />
none<br />
N/A<br />
N/A<br />
Example<br />
--> voip sip fdb create default address 9x. contact 192.168.1.10 domain<br />
voip.atkk.com<br />
See also VOIP SIP FDB LIST<br />
VOIP SIP FDB SHOW<br />
VOIP SIP FDB DELETE<br />
Syntax VOIP SIP FDB DELETE <br />
Description This command deletes a single fdb entry created using the VOIP SIP FDB CREATE<br />
command.<br />
To show the list of existing FDB entries, use the VOIP SIP FDB LIST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).
382 Chapter 16 – VoIP SIP<br />
Option Description Default Value<br />
name<br />
A name (or the ID value) that identifies an<br />
existing user in the forwarding database. To<br />
display the existing FDB entries, use the<br />
VOIP SIP FDB LIST command.<br />
N/A<br />
Example --> voip sip fdb delete default<br />
See also VOIP SIP FDB CREATE<br />
VOIP SIP FDB LIST<br />
VOIP SIP FDB LIST<br />
Syntax VOIP SIP FDB LIST<br />
Description This command lists information about FDB entries added using the VOIP SIP FDB<br />
CREATE command.<br />
The following information is displayed:<br />
• FDB entry ID numbers<br />
• FDB entry names<br />
• FDB entry Address<br />
<br />
Note: If an fdb name is longer than 32 chars, the name is shown in a short<br />
format (only the initial part of the name is displayed). To show the full name use<br />
the VOIP SIP FDB SHOW command, specifying the user ID instead of user<br />
name.<br />
Example --> voip sip fdb list<br />
Gateway forwarding database:<br />
ID | Name | Address<br />
----|------------|---------------------<br />
1 | pstn | 9x.<br />
---------------------------------------<br />
See also VOIP SIP FDB CREATE<br />
VOIP SIP FDB SHOW<br />
VOIP SIP FDB SHOW<br />
Syntax VOIP SIP FDB SHOW <br />
Description This command lists information about a named FDB entry added to the forwarding<br />
data base using the VOIP SIP FDB CREATE command. The following information is<br />
displayed:<br />
• Address
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 383<br />
• Domain<br />
• Contact<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name (or the ID value) that identifies an<br />
existing user in the forwarding database. To<br />
display the existing FDB entries, use the<br />
VOIP SIP FDB LIST command.<br />
N/A<br />
Example --> voip sip fdb show MrJohn<br />
Gateway forwarding database entry: MrJohn<br />
----------------------------------------------<br />
Address: 2010<br />
Area Code (AC):<br />
Domain: 192.168.0.5<br />
Contact: 10.17.90.51<br />
See also VOIP SIP FDB LIST
384 Chapter 17 – VoIP H323<br />
Chapter 17<br />
VoIP H323<br />
Introduction<br />
This chapter describes the main features of H.323 standard, the protocols supported,<br />
the implementation of the call processes in the AT-RG613, AT-RG623 and AT-<br />
RG656 and how to configure and operate the AT-RG613, AT-RG623 and AT-RG656<br />
to provide, or connect to, a VoIP Network.<br />
H.323 Protocols<br />
H.323 is a standard that specifies the components, protocols and procedures that<br />
provide multimedia communication services, real-time audio, video, and data<br />
communications over packet networks (see Figure 19), including Internet protocol<br />
(IP) based networks. H.323 is part of a family of ITU–T recommendations called<br />
H.32x that provides multimedia communication services over a variety of networks.<br />
Packet-based networks include IP based (including the Internet) or Internet packet<br />
exchange (IPX) based local-area networks (LANs), enterprise networks (ENs),<br />
metropolitan-area networks (MANs), and wide area networks (WANs). H.323 can<br />
be applied in a variety of mechanisms audio only (IP telephony); audio and video<br />
(video telephony); audio and data; and audio, video and data. H.323 can also be<br />
applied to multipoint-multimedia communications. H.323 provides myriad services<br />
and, therefore, can be applied in a wide variety of areas consumer, business, and<br />
entertainment applications.<br />
Packet Network (IP)<br />
H323<br />
H323 Terminal<br />
H323 Terminal
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 385<br />
Figure 19. H.323 Terminals on a Packet Network<br />
H.323 Components<br />
The H.323 standard specifies four kinds of components, which, when networked<br />
together, provide the point-to-point and point-to-multipoint multimediacommunication<br />
services:<br />
• terminals<br />
• gateways<br />
• gatekeepers<br />
• multipoint control units (MCUs)<br />
Terminals<br />
Used for real-time bi-directional multimedia communications, an H.323 terminal<br />
can either be a personal computer (PC) or a stand-alone device, running an H.323<br />
and the multimedia applications. It supports audio communications and can<br />
optionally support video or data communications.<br />
Because the basic service provided by an H.323 terminal is audio communications,<br />
an H.323 terminal plays a key role in IP–telephony services. An H.323 terminal can<br />
either be a PC or a stand-alone device, running an H.323 stack and multimedia<br />
applications.<br />
The primary goal of H.323 is to interwork with other multimedia terminals. H.323<br />
terminals are compatible with H.324 terminals on SCN and wireless networks,<br />
H.310 terminals on B–ISDN, H.320 terminals on ISDN, H.321 terminals on B– ISDN,<br />
and H.322 terminals on guaranteed QoS LANs. H.323 terminals may be used in<br />
multipoint conferences.<br />
Gateways<br />
A gateway connects two dissimilar networks. An H.323 gateway provides<br />
connectivity between an H.323 network and a non–H.323 network.<br />
For example, a gateway can connect and provide communication between an H.323<br />
terminal and SCN networks (SCN networks include all switched telephony<br />
networks, e.g., public switched telephone network PSTN. This connectivity of<br />
dissimilar networks is achieved by translating protocols for call setup and release,<br />
converting media formats between different networks, and transferring information<br />
between the networks connected by the gateway.<br />
A gateway is not required, however, for communication between two terminals on<br />
an H.323 network.<br />
Gatekeepers<br />
A gatekeeper can be considered the brain of the H.323 network. It is the focal point<br />
for all calls within the H.323 network.<br />
Although they are not required, gatekeepers provide important services such as<br />
addressing, authorization and authentication of terminals and gateways; bandwidth<br />
management and accounting. Gatekeepers may also provide call-routing services.
386 Chapter 17 – VoIP H323<br />
Multipoint Control Units<br />
MCUs provide support for conferences of three or more H.323 terminals.<br />
All terminals participating in the conference establish a connection with the MCU.<br />
The MCU manages conference resources, negotiates between terminals for the<br />
purpose of determining the audio or video coder/decoder (CODEC) to use, and may<br />
handle the media stream.<br />
The gatekeepers, gateways, and MCUs are logically separate components of the<br />
H.323 standard but can be implemented as a single physical device.<br />
Protocols Specified by H.323<br />
The protocols specified by H.323 are listed below:<br />
• audio CODECs<br />
• video CODECs<br />
• H.225 registration, admission, and status (RAS)<br />
• H.225 call signaling<br />
• H.245 control signaling<br />
• real-time transfer protocol (RTP)<br />
• real-time control protocol (RTCP)<br />
H.323 is independent of the packet network and the transport protocols over which<br />
it runs.<br />
Audio CODEC<br />
An audio CODEC encodes the audio signal from the microphone for transmission<br />
on the transmitting H.323 terminal and decodes the received audio code that is sent<br />
to the speaker on the receiving H.323 terminal.<br />
Because audio is the minimum service provided by the H.323 standard, all H.323<br />
terminals must have at least one audio CODEC support, as specified in the ITU–T<br />
G.711 recommendation (audio coding at 64 kbps).<br />
Additional audio CODEC recommendations such as G.722 (64, 56, and 48 kbps),<br />
G.723.1 (5.3 and 6.3 kbps), G.728 (16 kbps), and G.729 (8 kbps) may also be<br />
supported.<br />
Video CODEC<br />
A video CODEC encodes video from the camera for transmission on the<br />
transmitting H.323 terminal and decodes the received video code that is sent to the<br />
video display on the receiving H.323 terminal.<br />
Because H.323 specifies support of video as optional, the support of video CODECs<br />
is optional as well. However, any H.323 terminal providing video communications<br />
must support video encoding and decoding as specified in the ITU–T H.261<br />
recommendation.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 387<br />
H.225 Registration, Admission, and Status<br />
Registration, admission, and status (RAS) is the protocol between endpoints<br />
(terminals and gateways) and gatekeepers.<br />
The RAS is used to perform registration, admission control, bandwidth changes,<br />
status, and disengage procedures between endpoints and gatekeepers.<br />
A RAS channel is used to exchange RAS messages. This signaling channel is opened<br />
between an endpoint and a gatekeeper prior to the establishment of any other<br />
channels.<br />
H.225 Call Signaling<br />
The H.225 call signaling is used to establish a connection between two H.323<br />
endpoints. This is achieved by exchanging H.225 protocol messages on the callsignaling<br />
channel.<br />
The call-signaling channel is opened between two H.323 endpoints or between an<br />
endpoint and the gatekeeper.<br />
H.245 Control Signaling<br />
H.245 control signaling is used to exchange end-to-end control messages governing<br />
the operation of the H.323 endpoint.<br />
These control messages carry information related to the following:<br />
• capabilities exchange<br />
• opening and closing of logical channels used to carry media streams<br />
• flow-control messages<br />
• general commands and indications<br />
Real-Time Transport Protocol<br />
Real-time transport protocol (RTP) provides end-to-end delivery services of realtime<br />
audio and video.<br />
Whereas H.323 is used to transport data over IP–based networks, RTP is typically<br />
used to transport data via the user datagram protocol (UDP). RTP, together with<br />
UDP, provides transport-protocol functionality. RTP provides payload-type<br />
identification, sequence numbering, time stamping, and delivery monitoring. UDP<br />
provides multiplexing and checksum services. RTP can also be used with other<br />
transport protocols.<br />
Real-Time Transport Control Protocol<br />
Real-time transport control protocol (RTCP) is the counterpart of RTP that provides<br />
control services.<br />
The primary function of RTCP is to provide feedback on the quality of the data<br />
distribution. Other RTCP functions include carrying a transport-level identifier for<br />
an RTP source, called a canonical name, which is used by receivers to synchronize<br />
audio and video.
388 Chapter 17 – VoIP H323<br />
Terminal Characteristics<br />
H.323 terminals must support the following:<br />
• H.245 for exchanging terminal capabilities and creation of media channels<br />
• H.225 for call signaling and call setup<br />
• RAS for registration and other admission control with a gatekeeper<br />
• RTP/RTCP for sequencing audio and video packets<br />
H.323 terminals must also support the G.711 audio CODEC.<br />
Optional components in an H.323 terminal are video CODECs, T.120 dataconferencing<br />
protocols, and MCU capabilities.<br />
Gateway and Gatekeeper Characteristics<br />
Gateway Characteristics<br />
A gateway provides translation of protocols for call setup and release, conversion of<br />
media formats between different networks, and the transfer of information between<br />
H.323 and non H.323 networks An application of the H.323 gateway is in IP<br />
telephony, where the H.323 gateway connects an IP network and SCN network (e.g.,<br />
ISDN network).<br />
On the H.323 side, a gateway runs H.245 control signaling for exchanging<br />
capabilities, H.225 call signaling for call setup and release, and H.225 registration,<br />
admissions, and status (RAS) for registration with the gatekeeper.<br />
On the SCN side, a gateway runs SCN–specific protocols (e.g., ISDN and SS7<br />
protocols). Terminals communicate with gateways using the H.245 controlsignaling<br />
protocol and H.225 call-signaling protocol. The gateway translates these<br />
protocols in a transparent fashion to the respective counterparts on the non H.323<br />
network and vice versa. The gateway also performs call setup and clearing on both<br />
the H.323–network side and the non–H.323–network side. Translation between<br />
audio, video, and data formats may also be performed by the gateway.<br />
Audio and video translation may not be required if both terminal types find a<br />
common communications mode. For example, in the case of a gateway to H.320<br />
terminals on the ISDN, both terminal types require G.711 audio and H.261 video, so<br />
a common mode always exists. The gateway has the characteristics of both an H.323<br />
terminal on the H.323 network and the other terminal on the non–H.323 network it<br />
connects.<br />
Gatekeepers are aware of which endpoints are gateways because this is indicated<br />
when the terminals and gateways register with the gatekeeper. A gateway may be<br />
able to support several simultaneous calls between the H.323 and non–H.323<br />
networks. In addition, a gateway may connect an H.323 network to a non–H.323<br />
network. A gateway is a logical component of H.323 and can be implemented as<br />
part of a gatekeeper or an MCU.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 389<br />
Gatekeeper Characteristics<br />
Gatekeepers provide call-control services for H.323 endpoints, such as address<br />
translation and bandwidth management as defined within RAS. If they are present<br />
in a network, however, terminals and gateways must use their services.<br />
The H.323 standards both define mandatory services that the gatekeeper must<br />
provide and specify other optional functionality that it can provide.<br />
An optional feature of a gatekeeper is call-signaling routing. Endpoints send callsignaling<br />
messages to the gatekeeper, which the gatekeeper routes to the destination<br />
endpoints. Alternately, endpoints can send call-signaling messages directly to the<br />
peer endpoints. This feature of the gatekeeper is valuable, as monitoring of the calls<br />
by the gatekeeper provides better control of the calls in the network. Routing calls<br />
through gatekeepers provides better performance in the network, as the gatekeeper<br />
can make routing decisions based on a variety of factors, for example, load<br />
balancing among gateways.<br />
The services offered by a gatekeeper are defined by RAS and include address<br />
translation, admissions control, bandwidth control, and zone management. H.323<br />
networks that do not have gatekeepers may not have these capabilities, but H.323<br />
networks that contain IP telephony gateways should also contain a gatekeeper to<br />
translate incoming E.164 telephone addresses into transport addresses. A gatekeeper<br />
is a logical component of H.323 but can be implemented as part of a gateway or<br />
MCU.<br />
AT-RG613, AT-RG623 and AT-RG656 Call Processes<br />
The AT-RG613, AT-RG623 and AT-RG656 can communicate with the following<br />
devices:<br />
• Another terminal on the IP network, such as another AT-RG613, AT-RG623 and<br />
AT-RG656.<br />
• Any LAN H.323 endpoint on the IP network, for instance:<br />
• a Soft Phone<br />
• an IP phone directly connected to the IP network<br />
• A PSTN phone or fax. However, the AT-RG613, AT-RG623 and AT-RG656 would<br />
need to contact a PSTN gateway<br />
Calls Involving Another Terminal<br />
The following example (see Figure 20) illustrates how to reach a phone or fax on<br />
another AT-RG613/AT-RG623TX terminal.
390 Chapter 17 – VoIP H323<br />
H323 IP Phone<br />
VoIP Network<br />
Analog Phone<br />
(or Digital Phone)<br />
A<br />
B<br />
Analog Phone<br />
(or Digital Phone)<br />
AT-RG613<br />
(or AT-RG623)<br />
AT-RG613<br />
(or AT-RG623)<br />
H323 Gatekeeper<br />
Figure 20. Phone --> AT-RG613/RG623 (A) --> AT-RG613/RG623 (B) --> Phone<br />
A user makes a call with the phone connected to an AT-RG613/AT-RG623TX<br />
Residential Gateway, which in turn contacts another AT-RG613/AT-RG623TX<br />
Residential Gateway, which completes the connection to its locally attached phone.<br />
Calls Involving a Terminal and a H.323 Endpoint<br />
The following examples (see Figure 21) illustrate how a phone connected to an AT-<br />
RG613/AT-RG623TX Residential Gateway can communicate with a LAN H.323<br />
endpoint on the IP network.<br />
Such endpoints could be:<br />
• a Soft Phone<br />
• an IP phone directly connected to the IP network
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 391<br />
H323 IP Phone<br />
VoIP Network<br />
Analog Phone<br />
(or Digital Phone)<br />
A<br />
B<br />
Analog Phone<br />
(or Digital Phone)<br />
AT-RG613<br />
(or AT-RG623)<br />
AT-RG613<br />
(or AT-RG623)<br />
H323 Gatekeeper<br />
Figure 21. Phone --> AT-RG613/RG623 (A) --> H323 IP Phone<br />
A user makes a call with the phone connected to an AT-RG613/AT-RG623TX<br />
Residential Gateway, which reaches the corresponding LAN H.323 endpoint on the<br />
IP network.<br />
VoIP H323 Users<br />
Introduction<br />
The VoIP H323 subsystem on the AT-RG613, AT-RG623 and AT-RG656 Residential<br />
gateways is based on the concept of users and access ports.<br />
The following section describe users while Error! <strong>Reference</strong> source not found.<br />
describes access ports.<br />
Users are entities uniquely identified in the system by a name with an associated<br />
phone number. A userʹs phone number represents the userʹs address on the local<br />
system.<br />
User definition is a mandatory step in the correct configuration of the VoIP H323<br />
subsystem (see Figure 22).
392 Chapter 17 – VoIP H323<br />
Default Configuration<br />
H323 Signaling Protocol<br />
Configuration<br />
Access Port Creation<br />
Users Creation<br />
Access Port Config.<br />
Users Binding<br />
Incoming/<br />
Outgoing Calls<br />
Figure 22. VoIP H323 subsystem configuration - basic steps.<br />
Users<br />
The system is designed to support up to 100 users.<br />
Users are defined by the VOIP H323 USER CREATE command.<br />
Each user must have an associated a user number composed of an address number<br />
and, optionally, an area code number if a complete E.164 number must be defined.<br />
<br />
<br />
<br />
Note 1: In any given system there cannot exist two or more users with the same<br />
area code and address.<br />
In the any given it is valid to have two ore more users with the same address<br />
but different area code or no area code at all.<br />
Note 2: Users may inform the VoIP network about the location (IP address)<br />
where they can be contacted by registering themselves on the gatekeeper<br />
defined in the VOIP H323 USER CREATE command. In this way other<br />
endpoints on the VoIP network can contact each user by simply using the user<br />
address.<br />
Note 3: All the users must use the same gatekeeper, i.e.it is not possible manage<br />
simultaneously registrations on multiple gatekeepers.<br />
If no gatekeeper is specified, a gatekeeper autodiscover procedure is initialized to<br />
find a list of available gatekeepers.<br />
To know the userʹs registration status use the VOIP H323 USER SHOW command.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 393<br />
The user number used in the registration messages is the complete user number:<br />
area code + address number.<br />
users and access port<br />
A user needs to be attached at least to one physical port in order to receive or to<br />
make a call.<br />
To attach a user to a physical port use the VOIP H323 USER ADD command.<br />
When a user receives a call, only the access lines where the user is attached are<br />
engaged by the communication.<br />
The same user may be attached to more than one access port. In this case when it<br />
receives the call all the lines where it is attached will be used to signal the incoming<br />
call.<br />
To know the physical port where a user is attached, use the VOIP H323 USER<br />
SHOW command<br />
Note that physical access ports don’t have their own fixed phone number. They<br />
inherit the phone number from the user number of the attached users.<br />
More than one user may be attached to the same physical access port and therefore<br />
more than one phone number can be associated with the same physical access port.<br />
If a user receive a call but the physical line where it is attached is already involved<br />
in another communication (because it is being used by another user), the call is<br />
rejected.<br />
When an outgoing call (in the direction user to VoIP network) is made and more<br />
than one user is attached on the access port being used to make the call, the identity<br />
of the calling user is deemed to be the first user defined in the list of attached users.<br />
To know which users are attached to a physical port, use the VOIP EP SHOW<br />
command. All the local users belongs to the same domain.<br />
When an access port is deleted from the system, all users previously attached are<br />
removed from the port.<br />
Removing a user from a port, using the VOIP H323 USER REMOVE command or<br />
deleting the access port, results in an un-registration process from the gatekeeper<br />
defined during user creation phase.
394 Chapter 17 – VoIP H323<br />
VoIP H323 Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG 623 and<br />
AT-RG656 Residential Gateway to configure and manage the H323 protocol<br />
signaling module.<br />
VoIP h323 protocol CLI commands<br />
The table below lists the VOIP H323 PROTOCOL commands provided by the CLI:<br />
Command<br />
VOIP H323 PROTOCOL DISABLE<br />
VOIP H323 PROTOCOL ENABLE<br />
VOIP H323 PROTOCOL SET MEDIAPORT<br />
VOIP H323 PROTOCOL SET ALIAS<br />
VOIP H323 PROTOCOL SET CONNECT<br />
VOIP H323 PROTOCOL SET GATEKEEPER<br />
VOIP H323 PROTOCOL SET NETINTERFACE<br />
VOIP H323 PROTOCOL SET Q931PORT<br />
VOIP H323 PROTOCOL SET RASPORT<br />
VOIP H323 PROTOCOL SET REGISTRATION<br />
VOIP H323 PROTOCOL SET RESPONSE<br />
VOIP H323 PROTOCOL SET SECONDARYGATEKEEPER<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL DISABLE<br />
Syntax VOIP H323 PROTOCOL DISABLE<br />
Description This command stops the VoIP H323 signaling protocol and releases all the resources<br />
associated with it.:<br />
• any analogue or digital port defined in the system is removed.<br />
• any user defined in the system is deleted.<br />
This command is typically used when itʹs necessary to change the VoIP signaling<br />
protocol, i.e. from H323 to SIP.<br />
To simply restart the H323 module, use the VOIP H323 PROTOCOL RESTART<br />
command. It doesnʹt remove any resources defined under the voip main module.<br />
To enable the H323 module, use the VOIP H323 PROTOCOL ENABLE command.<br />
Example --> voip h323 protocol disable.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 395<br />
See also VOIP H323 PROTOCOL RESTART<br />
VOIP H323 PROTOCOL ENABLE.<br />
VOIP H323 PROTOCOL ENABLE<br />
Syntax VOIP H323 PROTOCOL ENABLE<br />
Description This command turns on the H323 signaling module.<br />
To bind the H323 module to a specific IP interface uset the VOIP H323 PROTOCOL<br />
SET INTERFACE command.<br />
<br />
Binding the H323 module to a specific IP interface defines the value of the<br />
source IP address for signallng and voice packets.<br />
<br />
The H323 module MUST be enabled in order to create/set analog/digital<br />
ports, users and H323 gatekeeper.<br />
By default, when the H323 module is started the following default values are used:<br />
• q931port: 1720<br />
• rasport: 1719<br />
Example<br />
--> voip h323 protocol enable<br />
See also VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL DISABLE<br />
VOIP H323 PROTOCOL SET ALIAS<br />
Syntax VOIP H323 PROTOCOL SET ALIAS <br />
• Description This command sets the user logical name used for<br />
remote party calling, translated by the Gatekeeper to the network address<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
alias<br />
The terminal alias used in H.225 registration<br />
messages to identify the residential<br />
gateway.<br />
N/A<br />
Example --> voip h323 protocol set alias at-rg613-1.voip.atkk.com
396 Chapter 17 – VoIP H323<br />
See also VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET CONNECT<br />
Syntax VOIP H323 PROTOCOL SET CONNECT <br />
Description This command sets response timeout value.<br />
By default, when the H323 module is started using the VOIP H323 PROTOCOL<br />
ENABLE command, the following default values are used:<br />
• registration:<br />
• response:<br />
• connect:<br />
7200 secs<br />
20 secs<br />
30 secs<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
secs<br />
The interval time (expressed in seconds) for<br />
which the system waits for CONNECTmessages<br />
when a call is placed before<br />
tearing down the connection.<br />
Acceptable value are from 10 to 5255<br />
seconds.<br />
30<br />
Example --> voip h323 protocol set connect 60<br />
See also VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET GATEKEEPER<br />
Syntax VOIP H323 PROTOCOL SET GATEKEEPER <br />
Description This command sets the primary gatekeeper.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
gk<br />
ipport<br />
The hostname or IPv4 address of the<br />
primary gatekeeper.<br />
Primary-host can be a maximum of 256<br />
chars long (when using hostname format).<br />
The port on primary gatekeeper where<br />
H225 registration messages are sent.<br />
N/A<br />
1719
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 397<br />
id<br />
Itʹs the gatekeeper identifier. Id can be 20 a<br />
maximum of 20 chars long<br />
N/A<br />
Example --> voip h323 protocol set gatekeeper 10.17.90.110<br />
See also VOIP H323 PROTOCOL ENABLE<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET NETINTERFACE<br />
Syntax VOIP H323 PROTOCOL SET NETINTERFACE <br />
Description This command sets the IP interface used to access the VoIP network.<br />
Signaling and voice packets will use the Source IP address defined for the selected<br />
interface.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
interface_name<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
N/A<br />
Example --> voip h323 protocol set netinterface ip0<br />
See also VOIP H323 PROTOCOL ENABLE<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET Q931PORT<br />
Syntax VOIP H323 PROTOCOL SET Q931PORT <br />
Description This command sets the UDP/TCP port on the Residential Gateway used to send and<br />
receive signalling messages.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
ipport<br />
The UDP/TCP port on the Residential<br />
Gateway used to send and receive<br />
signalling messages.<br />
1720<br />
Example --> voip h323 protocol set q931port 1740<br />
See also VOIP H323 PROTOCOL SET RASPORT<br />
VOIP H323 PROTOCOL SHOW
398 Chapter 17 – VoIP H323<br />
VOIP H323 PROTOCOL SET RASPORT<br />
Syntax VOIP H323 PROTOCOL SET RASPORT <br />
Description This command sets the UDP/TCP port on the Residential Gateway used to send and<br />
receive registration messages.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
ipport<br />
The UDP/TCP port on the Residential<br />
Gateway used to send and receive<br />
registration messages.<br />
1719<br />
Example --> voip h323 protocol set rasport 1739<br />
See also VOIP H323 PROTOCOL SET Q931PORT<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET REGISTRATION<br />
Syntax VOIP H323 PROTOCOL SET REGISTRATION <br />
Description This command sets registration timeout value.<br />
By default, when the H323 module is started using the VOIP H323 PROTOCOL<br />
ENABLE command, the following default values are used:<br />
• registration:<br />
• response:<br />
• connect:<br />
7200 secs<br />
20 secs<br />
30 secs<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
secs<br />
The interval time (expressed in seconds)<br />
between two consecutive registrations.<br />
Acceptable value are from 10 to 10800<br />
seconds.<br />
7200<br />
Example --> voip h323 protocol set registration 3600<br />
See also VOIP H323 PROTOCOL SET RESPONSE<br />
VOIP H323 PROTOCOL SHOW
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 399<br />
VOIP H323 PROTOCOL SET RESPONSE<br />
Syntax VOIP H323 PROTOCOL SET RESPONSE <br />
Description This command sets response timeout value.<br />
By default, when the H323 module is started using the VOIP H323 PROTOCOL<br />
ENABLE command, the following default values are used:<br />
• registration:<br />
• response:<br />
• connect:<br />
7200 secs<br />
20 secs<br />
30 secs<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
secs<br />
The interval time (expressed in seconds) for<br />
which the system waits for ALERTING<br />
messages when a call is placed before<br />
tearing down the connection.<br />
Acceptable value are from 10 to 5255<br />
seconds.<br />
20<br />
Example --> voip h323 protocol set response 40<br />
See also VOIP H323 PROTOCOL SET REGISTRATION<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SET<br />
SECONDARYGATEKEEPER<br />
Syntax VOIP H323 PROTOCOL SET SECONDARYGATEKEEPER <br />
Description This command sets the secondary gatekeeper.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
gk<br />
ipport<br />
The hostname or IPv4 address of the<br />
secondary gatekeeper.<br />
Secondary-host can be a maximum of 256<br />
chars long (when using hostname format).<br />
The port on secondary gatekeeper where<br />
H225 registration messages are sent.<br />
N/A<br />
1719
400 Chapter 17 – VoIP H323<br />
id<br />
Itʹs the gatekeeper identifier. Id can be a<br />
maximum of 20 chars long<br />
N/A<br />
Example --> voip h323 protocol set secondarygatekeeper 10.17.90.111<br />
See also VOIP H323 PROTOCOL ENABLE<br />
VOIP H323 PROTOCOL SHOW<br />
VOIP H323 PROTOCOL SHOW<br />
Syntax VOIP H323 PROTOCOL SHOW<br />
Description This command displays basic H323 module configuration parameters set by the<br />
VOIP H323 PROTOCOL ENABLE command.<br />
Example --> voip h323 protocol show<br />
Gateway base protocol: H323<br />
--------------------------------------------------------------<br />
RAS port: 1719<br />
Q931 port: 1720<br />
Network interface:<br />
ip0<br />
Gatekepeer:<br />
192.168.1.110<br />
Secondarygatekepeer: 192.168.1.111<br />
Alias:<br />
Timers:<br />
Registration: 7200<br />
Response: 20<br />
Connect: 90<br />
See also VOIP H323 PROTOCOL ENABLE
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 401<br />
VoIP H323 User Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to enable, configure and manage the VoIP H323<br />
User module.<br />
voip H323 user CLI commands<br />
The table below lists the VOIP H323 USER commands provided by the CLI:<br />
Command<br />
VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP H323 USER ADD<br />
Syntax VOIP H323 USER ADD PORT <br />
Description This command attaches a user created with the command VOIP H323 USER<br />
CREATE to a named port created with the command VOIP EP CREATE.<br />
H323 protocol:<br />
As soon this command is entered, the registration phase starts to the Gatekeeper<br />
specified in the VOIP H323 USER CREATE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
portname<br />
A name that identifies an existing user (it<br />
can also be the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP H323 USER LIST command.<br />
A name that identifies an existing port. To<br />
display the existing ports, use the VOIP EP<br />
LIST command.<br />
N/A<br />
N/A<br />
Example --> voip h323 user add MrBrown port fxs0<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE
402 Chapter 17 – VoIP H323<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST<br />
VOIP H323 USER CREATE<br />
Syntax VOIP H323 USER CREATE ADDRESS [AREACODE<br />
]<br />
Description This command creates a new entry in the users list. Each user must have a different<br />
. If the user already exists, an error message is raised.<br />
This command is accepted only if the H323 module is already running. See the<br />
VOIP H323 PROTOCOL ENABLE command to turn on the H323 module.<br />
The username can be 16 characters in length; cannot start with a digit and cannot<br />
contain dots ʹ.ʹ or slash symbols ʹ/ʹ.<br />
This command doesn’t bind the user to a physical access port. In order to inform the<br />
system that the user is attached to a specific physical port, the VOIP H323 USER<br />
ADD command must be used.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
digit-map<br />
area-number<br />
An arbitrary name that identifies the user.<br />
The name must not be present already.<br />
The username can be a maximum of 16<br />
characters long.<br />
The phone number (E.164) used to reach the<br />
user.<br />
The address can be 32 characters long.<br />
The prefix number to be dialed before the<br />
destination number. Valid characters are<br />
only digits. The area number can be a<br />
maximum of 10 digits long.<br />
N/A<br />
N/A<br />
empty<br />
Example<br />
--> voip h323 user create MrBrown address 12345<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 403<br />
VOIP H323 USER DELETE<br />
Syntax VOIP H323 USER DELETE <br />
Description This command deletes a single user created using the VOIP H323 USER CREATE<br />
command.<br />
To show the list of existing users, use the VOIP H323 USER LIST command.<br />
As soon this command is entered, the deregistration phase starts to the Gatekeeper;<br />
removing the user from the user list on the server.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
A name that identifies an existing user (it<br />
can also be the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP H323 USER LIST command.<br />
N/A<br />
Example --> voip h323 user delete MrBrown<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST<br />
VOIP H323 USER LIST<br />
Syntax VOIP H323 USER LIST<br />
Description This command lists information about users that were added using the VOIP H323<br />
USER CREATE command. The following information is displayed:<br />
• user ID numbers<br />
• user names<br />
• Area Codes<br />
• Addresses<br />
<br />
Note: If the user name is longer than 32 chars, the name is shown in a short<br />
format (only the initial part of the name is displayed). To show the full name use<br />
the VOIP EP USER SHOW command, specifying the user ID instead of user<br />
name.
404 Chapter 17 – VoIP H323<br />
Example<br />
--> voip h323 user list<br />
ID | Name | Area Code | Address<br />
---- |------------|------------------|------------------------------------<br />
1 | MrBrown | | 12345<br />
---- |------------|------------------|------------------------------------<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST<br />
VOIP H323 USER REMOVE<br />
Syntax VOIP H323 USER REMOVE PORT <br />
Description This command remove a single user from the port where it was added with the<br />
VOIP H323 USER ADD command.<br />
Removing a user from a port results in an deregistration request to the Gatekeeper<br />
specified in the VOIP H323 USER CREATE command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
portname<br />
A name that identifies an existing user (it<br />
canalso be the ID value associated with the<br />
user name). To display the existing users,<br />
use the VOIP H323 USER LIST command.<br />
A name that identifies an existing port. To<br />
know the ports where the user is added, use<br />
the VOIP H323 USER SHOW command.<br />
N/A<br />
N/A<br />
Example --> voip h323 user remove MrBrown port fxs0<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 405<br />
VOIP H323 USER SHOW<br />
Syntax VOIP H323 USER SHOW <br />
Description This command displays the following information about a named user:<br />
• Address<br />
• Area Code<br />
• State<br />
• Attached ports<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
username<br />
A name that identifies an existing user. To<br />
display the existing users, use the VOIP<br />
H323 USER LIST command.<br />
N/A<br />
Example --> voip h323 user show MrBrown<br />
Gateway user: MrBrown<br />
------------------------------------------------------<br />
Address: 10<br />
Area Code (AC): 1<br />
State:<br />
registered (expire time: 2739 Sec.)<br />
Attached ports: fxs0<br />
See also VOIP H323 USER ADD<br />
VOIP H323 USER CREATE<br />
VOIP H323 USER DELETE<br />
VOIP H323 USER LIST<br />
VOIP H323 USER REMOVE<br />
VOIP H323 USER SHOW<br />
VOIP EP LIST
406 Chapter 17 – VoIP H323<br />
VoIP H323 FDB Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage the FDB module.<br />
voip h323 fdb CLI commands<br />
The table below lists the VOIP H323 FDB commands provided by the CLI:<br />
Command<br />
VOIP H323 FDB CREATE<br />
VOIP H323 FDB DELETE<br />
VOIP H323 FDB LIST<br />
VOIP H323 FDB SHOW<br />
VOIP H323 FDB CREATE<br />
Syntax VOIP H323 FDB CREATE ADDRESS CONTACT <br />
[FWADDRESS ]<br />
Description This command creates a new entry in the forwarding database (FDB).<br />
ADDRESS is the called address expected to be received from the calling end-point in<br />
order to forward the call to the CONTACT. It can be also a digit-map if an address<br />
pool must be forwarded to a specific host address.<br />
CONTACT is the host reference where the call is forwarded.<br />
The FWADDRESS replaces the destination address of the call. It is optional and it is<br />
used to make a short selection rule (e.g. dialed number 01 corresponds to<br />
00390224141121)<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
digit-map<br />
An arbitrary name that identifies this<br />
specific fdb rule. The name must not be<br />
present already.<br />
The fdb name can be a maximum of 16<br />
characters long.<br />
The called user address (i.e. phone number)<br />
expected to be received.<br />
It can be a digit map expression<br />
The digit-map can be a maximum of 32<br />
chars long.<br />
N/A<br />
N/A
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 407<br />
contact-host<br />
port<br />
tel-number<br />
The hostname or IPv4 address of the remote<br />
end-point where call must be routed.<br />
Contact-host can be a maximum of 256<br />
chars long (when using hostname format).<br />
The UDP/TCP port on the contact host to<br />
which signalling messages are sent.<br />
Is the new number to which the call is<br />
redirected.<br />
N/A<br />
5060<br />
N/A<br />
Example<br />
--> voip h323 fdb create default address 9x. contact 192.168.1.10<br />
See also VOIP H323 FDB LIST<br />
VOIP H323 FDB SHOW<br />
VOIP H323 FDB DELETE<br />
Syntax VOIP H323 FDB DELETE <br />
Description This command deletes a single fdb entry created using the VOIP H323 FDB<br />
CREATE command.<br />
To show the list of existing FDB entries, use the VOIP H323 FDB LIST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name (or the ID value) that identifies an<br />
existing user in the forwarding database. To<br />
display the existing FDB entries, use the<br />
VOIP H323 FDB LIST command.<br />
N/A<br />
Example --> voip h323 fdb delete default<br />
See also VOIP H323 FDB CREATE<br />
VOIP H323 FDB LIST<br />
VOIP H323 FDB LIST<br />
Syntax VOIP H323 FDB LIST<br />
Description This command lists information about FDB entries added using the VOIP H323 FDB<br />
CREATE command.<br />
The following information is displayed:<br />
• FDB entry ID numbers<br />
• FDB entry names
408 Chapter 17 – VoIP H323<br />
• FDB entry Address<br />
<br />
Note: If an fdb name is longer than 32 chars, the name is shown in a short<br />
format (only the initial part of the name is displayed). To show the full name use<br />
the VOIP H323 FDB SHOW command, specifying the user ID instead of user<br />
name.<br />
Example --> voip h323 fdb list<br />
Gateway forwarding database:<br />
ID | Name | Address<br />
----|------------|---------------------<br />
1 | pstn | 9x.<br />
---------------------------------------<br />
See also VOIP H323 CREATE<br />
VOIP H323 SHOW<br />
VOIP H323 FDB SHOW<br />
Syntax VOIP H323 SHOW <br />
Description This command lists information about a named FDB entry added to the forwarding<br />
data base using the VOIP H323 FDB CREATE command. The following information<br />
is displayed:<br />
• Address<br />
• Contact<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name (or the ID value) that identifies an<br />
existing user in the forwarding database. To<br />
display the existing FDB entries, use the<br />
VOIP H323 FDB LIST command.<br />
N/A<br />
Example --> voip h323 fdb show MrJohn<br />
Gateway forwarding database entry: MrJohn<br />
----------------------------------------------<br />
Address: 2010<br />
Contact: 10.17.90.51<br />
See also VOIP H323 FDB LIST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 409<br />
Chapter 18<br />
VoIP MGCP<br />
Introduction<br />
The MGCP (Media Gateway Control Protocol) is a protocol that assumes a call<br />
control architecture where the call control ʺintelligenceʺ is outside the gateways and<br />
handled by external call control elements, the call agent. MGCP assumes that the<br />
gateways have limited storage and functionality.<br />
So, two are the MGCP entities: Call Agent (Media Gateway Controller MGC) which<br />
handles the call control “intelligence”, that means the call signaling and the call<br />
processing functions; and the Media Gateway (MG) that provides conversion<br />
between the audio signals carried on telephone circuits and data packets carried<br />
over Internet or packets networks and expects to execute command sent by the Call<br />
Agent.<br />
MGCP is a master/slave protocol; while the call agent is mandatory and manages<br />
the calls and conferences and supports the services provided, the endpoint is<br />
unaware of the calls and conferences and does not maintain call states, it’s simply<br />
expected to execute commands sent by the call agent.<br />
Connections & Endpoints<br />
MGCP introduces the concepts of connections and endpoints for establishing endto-end<br />
voice paths and the concepts of events and signals for establishing and<br />
tearing down calls.<br />
Endpoints are sources or sinks of data and can be physical or virtual. Physical<br />
endpoint creation requires hardware installation while software is sufficient for<br />
creating a virtual endpoint. An interface on a gateway that terminates a trunk
410 Chapter 18 – VoIP MGCP<br />
connected to a PSTN switch is an example of a physical endpoint. An audio source<br />
in an audio-content server is an example of a virtual endpoint.<br />
Connections may be either point-to-point or multipoint. A point-to-point connection<br />
is an association between two endpoints for transmitting data between these<br />
endpoints. Once this association is established for both endpoints, data transfer<br />
between these endpoints can take place. A multipoint connection is an association<br />
among multiple endpoints for transmitting data among these endpoints.<br />
Connections can be established over several types of bearer networks:<br />
• Transmission of audio using RTP and UDP over a TCP/IP network.<br />
• Transmission of audio over an ATM network.<br />
The call agent uses MGCP to provision the gateways with the description of<br />
connection parameters such as IP addresses, UDP port and RTP profiles. These<br />
descriptions follow the conventions delineated in the Session Description Protocol<br />
(SDP) which is now an IETF proposed standard, documented in RFC 2327. The use<br />
of SDP facilitates interoperability with the Session Initiation Protocol (SIP).<br />
The control primitives for MGCP operations are Signals sent from the call Agent to<br />
the gateway, and Events sent from the Gateway to the Call agent. The concepts of<br />
Signals and Events are used for establishing and tearing down calls.<br />
Operations are performed by applying Signals TO, and detecting Events FROM<br />
endpoints. A Call agent initiates transactions to manage/configure Endpoint using<br />
MGCP commands. Endpoint sends responses Call agent transaction requests using<br />
either a notification or restart command.<br />
The concepts of events and signals are central to MGCP. A call agent may ask to be<br />
notified about certain events occurring in an endpoint, e.g. off-hook events, and a<br />
call agent may request certain signals to be applied to an endpoint, e.g. dial-tone.<br />
Events and signals are grouped in packages. Packages are groupings of the events<br />
and signals supported by a particular type of endpoint. For instance, one package<br />
may support a certain group of events and signals for analog access lines, and<br />
another package may support another group of events and signals for MF trunks.<br />
Digits, or letters, are supported in many packages. Digits include numbers between<br />
0 and 9. Letters may include the asterisk ʺ*ʺ, the pound sign ʺ#ʺ and others. The call<br />
agent can ask a gateway to detect a set of digits or letters either by individually<br />
describing those letters, or by using the ʺrangeʺ notation defined in the syntax of<br />
digit strings.<br />
Signals and Events needed to support a specific telephony function or type of<br />
endpoint are grouped into Event/Signal Packages. Example packages defined in the<br />
MGCP specification include:<br />
• Generic Media Package<br />
• DTMF Package<br />
• Line package
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 411<br />
MGCP Protocol Commands<br />
There are eight commands in the protocol: NotificationRequest, Notify,<br />
CreateConnection, ModifyConnection, DeleteConnection, AuditEndpoint,<br />
AuditConnection and RestartInProgress.<br />
NotificationRequest<br />
The NotificationRequest command is used by the call agent for requesting from a<br />
gateway to be notified upon the occurrence of specified events in an endpoint. For<br />
example, a notification may be requested for the event that a gateway detects that an<br />
endpoint is going off hook. A list of potential events includes: off hook transition, on<br />
hook transition, flash-hook, MF incoming seizure detected, continuity tone detected<br />
etc.<br />
The call agent can also request that the gateway collect the dialed digits. The<br />
NotificationRequest allows the call agent to download a specific dialing plan to the<br />
gateway to be used for collecting the digits.<br />
A call agent also includes a unique identifier in the NotificationRequest that will be<br />
included by the gateway in the gateway’s Notify message when the requested event<br />
actually occurs. This identifier is used for tying the NotificationRequest to the<br />
Notify message that will be sent by the gateway.<br />
Notify<br />
Notifications are sent by the gateway via the Notify command in response to a<br />
NotificationRequest sent by the call agent to the gateway. The gateway includes in<br />
the Notify command a list of the events it observed. The Notify command includes<br />
the unique identifier that was sent by the call agent to the gateway in the<br />
NotificationRequest command.<br />
CreateConnection<br />
The call agent uses the CreateConnection command for binding an endpoint to a<br />
specific IP address and UDP port. Another CreateConnection request for the remote<br />
endpoint is necessary for creating an end-to-end connection with two endpoints.<br />
The CreateConnection request specifies a CallId that will be used for identifying the<br />
call or session to which this connection belongs. More than one connection may<br />
actually share the same CallId. The CreateConnection request also specifies the<br />
endpoint to be used for this connection and the parameters to be used for the<br />
connection. These parameters may include for example voice encoding, and<br />
compression parameters. The call agent also specifies the mode of the connection.<br />
The mode may be ʺsend,ʺ ʺreceive,ʺ send/receive,ʺ ʺconference,ʺ ʺinactive,ʺ ʺdata,ʺ<br />
ʺloopback,ʺ continuity test,ʺ ʺnetwork loopbackʺ or ʺnetwork continuity test.ʺ<br />
The CreateConnection request from the call agent may include a description of the<br />
remote side of the connection on the IP network i.e. parameters of the connection
412 Chapter 18 – VoIP MGCP<br />
like encoding, but also IP address UDP port. The remote connection description may<br />
be unspecified in some CreateConnection requests. This occurs because the call<br />
agent needs to send two CreateConnection requests for creating an end-to-end<br />
connection. When the first CreateConnection request is sent the call agent doesn’t<br />
yet know the remote connection descriptor. This information may be provided later<br />
via a ModifyConection request.<br />
A CreateConnection request may also include the parameters normally included in<br />
a NotificationRequest. This allows the call agent to send a CreateConnection and a<br />
NotificationRequest combined in one CreateConnection message. This improves the<br />
performance of the protocol.<br />
When the gateway acknowledges the CreateConnection request it also sends to the<br />
call agent a ConnectionId that uniquely identifies the connection with in an<br />
endpoint and local connection information about the IP address and UDP port it<br />
selected. The call agent can potentially select those but the gateway may be sharing<br />
those resources for other functions and it is preferable that the gateway does the<br />
selection.<br />
ModifyConnection<br />
The Call Agent uses the ModifyConnection command for changing the parameters<br />
associated with a previously established connection. The parameters in the<br />
ModifyConnection command are the same as in a CreateConnection request. The<br />
ConnectionId is provided by the call agent to the gateway in a ModifyConnection<br />
request.<br />
The ModifyConnection can be used for:<br />
• Providing information about the other end of the connection through the<br />
remote connection descriptor<br />
• Activating or deactivating a connection<br />
• Changing the parameters of a connection.<br />
DeleteConnection<br />
The call agent can use the DeleteConnection command to delete an existing<br />
connection. When the gateway acknowledges a DeleteConnection request, it<br />
includes a list of parameters about the status of the connection in the response.<br />
These parameters include: numbers of packets and octets sent, number of packets<br />
and octets received, number of packets lost, inter-arrival jitter and average<br />
transmission delay.<br />
The DeleteConnection command may also be sent by a gateway to the call agent for<br />
indicating that a connection can no longer be sustained.<br />
AuditEndpoint<br />
The AuditEndpoint command can be used by the call agent for getting details about<br />
the status of an endpoint or a list of endpoints. The information that can be audited<br />
by the Call Agent includes: requested events, dialing plan and connection<br />
identifiers. The response of the gateway includes all the requested information.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 413<br />
AuditConnection<br />
The AuditConnection can be used by the call agent for retrieving information<br />
related to a specific connection of an endpoint identified by a ConnectionId. The<br />
information that can be retrieved includes: call id, local and remote connection<br />
descriptors, local connection parameters and the mode of the connection. The<br />
response of the gateway to the AuditConnection request includes all the requested<br />
information.<br />
RestartInProgress<br />
The RestartInProgress command is used by the gateway to signal that an endpoint,<br />
or a group of endpoints, is taken in or out of service. The parameters of the<br />
RestartInProgress message indicate the group of endpoints that the message applies<br />
to. The RestartInProgress method also includes a parameter that specifies the type of<br />
restart:<br />
o<br />
o<br />
o<br />
Graceful restart indicates that the endpoints will be taken out of service after<br />
a specified delay<br />
Forced restart indicates that the endpoints are taken immediately out of<br />
service<br />
Restart indicates that the service will be restored after the specified delay
414 Chapter 18 – VoIP MGCP<br />
MGCP Command reference<br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage the MGCP protocol<br />
module.<br />
MGCP commands<br />
The table below lists the mgcp commands provided by the CLI:<br />
Command<br />
VOIP MGCP PROTOCOL DISABLE<br />
VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP PROTOCOL RESTART<br />
VOIP MGCP PROTOCOL SET DEFAULTPORT<br />
VOIP MGCP PROTOCOL SET MAXRETRANSMITIONTIME<br />
VOIP MGCP PROTOCOL SET NAT<br />
VOIP MGCP PROTOCOL SET NETINTERFACE<br />
VOIP MGCP PROTOCOL SET PIGGYBACK<br />
VOIP MGCP PROTOCOL SET PROFILE<br />
VOIP MGCP PROTOCOL SET ROUNDTRIPTIME<br />
VOIP MGCP PROTOCOL SHOW<br />
VOIP MGCP CALLAGENT CREATE<br />
VOIP MGCP CALLAGENT DELETE<br />
VOIP MGCP CALLAGENT LIST<br />
VOIP MGCP PROTOCOL DISABLE<br />
Syntax VOIP MGCP PROTOCOL DISABLE<br />
Description This command stops the VoIP MGCP signalling protocol and releases all the<br />
resources associated to it.:<br />
This command is typically used when itʹs necessary to change the VoIP signalling<br />
protocol, i.e. from MGCP to SIP to H323.<br />
To simply restart the MGCP module, use the VOIP MGCP PROTOCOL RESTART<br />
command. It doesnʹt remove any resources defined for the protocol.<br />
To enable the MGCP module, use the VOIP MGCP PROTOCOL ENABLE<br />
command.<br />
Example --> voip mgcp protocol disable
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 415<br />
See also VOIP MGCP PROTOCOL RESTART<br />
VOIP MGCP PROTOCOL ENABLE.<br />
VOIP MGCP PROTOCOL ENABLE<br />
Syntax VOIP MGCP PROTOCOL ENABLE<br />
Description This command turns on the MGCP signaling module.<br />
To bind the MGCP module to a specific IP interface use the VOIP MGCP<br />
PROTOCOL SET NETINTERFACE command.<br />
<br />
Binding the MGCP module to a specific IP interface defines the value of<br />
the source IP address for signallng and voice packets.<br />
Example<br />
--> voip mgcp protocol enable<br />
See also VOIP MGCP PROTOCOL SHOW<br />
VOIP MGCP PROTOCOL DISABLE<br />
VOIP MGCP PROTOCOL RESTART<br />
Syntax<br />
VOIP MGCP PROTOCOL RESTART<br />
Description This command restarts the VoIP MGCP signaling protocol module.<br />
Any pending and active calls are released.<br />
This command doesnʹt release any resources previously created during module<br />
configuration.<br />
Example --> voip mgcp protocol restart<br />
See also VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP PROTOCOL SET DEFAULTPORT<br />
Syntax VOIP MGCP PROTOCOL SET DEFAULTPORT <br />
Description This command sets the default listening/sending port used for MGCP signaling<br />
messages.<br />
By default, when the MGCP module is attached to an IP interface using theVOIP<br />
MGCP PROTOCOL SET NETINTERFACE command, the following default value is<br />
used:<br />
• defaultport: 2427
416 Chapter 18 – VoIP MGCP<br />
<br />
Changing the signaling port causes the MGCP module to restart.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
ipport<br />
UDP/TCP port number used for signalling<br />
messages.<br />
Available values are from 1026 to 65534.<br />
Only even values can be accepted<br />
2427<br />
Example --> voip mgcp protocol set defaultport 2427<br />
See also VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP PROTOCOL SET NAT<br />
Syntax VOIP MGCP PROTOCOL SET NAT {NONE | }<br />
Description This command sets the NAT host reference. Any MGCP message with local<br />
reference is hidden by the NAT address value.<br />
<br />
Changing the NAT reference causes the MGCP module to restart.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
host<br />
The address that must displayed in the<br />
MGCP messages.<br />
It can be expressed in hostname format or<br />
IPv4 format.<br />
A Hostname can be a maximum of 255<br />
characters long.<br />
None<br />
Example --> voip mgcp protocol set nat 10.17.90.110<br />
--> voip mgcp protocol set nat at-rg600.voip.atkk.com<br />
See also VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP PROTOCOL SET NETINTERFACE<br />
Syntax VOIP MGCP PROTOCOL SET NETINTERFACE <br />
Description This command sets the IP interface used to access the VoIP network.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 417<br />
• Signaling and voice packets will use the Source IP address defined for the<br />
selected interface.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
interface_name<br />
A name that identifies an existing IP<br />
interface. To display interface names, use<br />
the IP LIST INTERFACES command.<br />
N/A<br />
Example --> voip MGCP protocol set netinterface ip0<br />
See also VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP PROTOCOL SET PROFILE<br />
Syntax VOIP MGCP PROTOCOL SET PROFILE <br />
Description This command sets specific customer MGCP call agent profile. This command is<br />
used to fix interoperability constraints when the MGCP module has to work with<br />
call agent that could differer from a standard implementation. Moreover this<br />
command can set the two standard profiles: none and ncs. The available profiles<br />
are:<br />
• none: basic MGCP based on RFC3435.<br />
• ncs: basic NCS profile<br />
• ags: customization for Lucent AGCS iMerge Call Agent<br />
• audiocodes: customization for Audiocodes Mediant 5000 Call Agent<br />
• gb: customization for General Bandwidth G6 Call Agent<br />
• marconi: customization for Marconi Softswitch Call Agent<br />
• nuera: customization for Nuera Call Agent<br />
• siemens: customization for Siemens Softswitch Call Agent<br />
• sphere: customization for SphereCom Call Agent<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
profile<br />
The specific customer call-agent type.<br />
Possible values are:<br />
ags, audiocodes, gb, marconi, ncs, none,<br />
nuera, siemens or sphere<br />
none<br />
Example --> voip mgcp protocol set profile ncs
418 Chapter 18 – VoIP MGCP<br />
VOIP MGCP PROTOCOL SHOW<br />
Syntax VOIP MGCP PROTOCOL SHOW<br />
Description This command displays basic MGCP module configuration parameters set by the<br />
VOIP MGCP PROTOCOL ENABLE command.<br />
Example --> voip mgcp protocol show<br />
Gateway base protocol: MGCP<br />
---------------------------------------------------------<br />
Profile:<br />
sphere<br />
Supported packages:<br />
Basic, Generic Media,<br />
DTMF, Line<br />
Piggy-Back:<br />
Enable<br />
Network interface:<br />
ip0<br />
Default port: 2427<br />
NAT:<br />
None<br />
Round-trip time:<br />
10000 msecs.<br />
Maximum re-transmition time: 30 secs.<br />
Network loss rate: 0 %<br />
See also VOIP MGCP PROTOCOL ENABLE<br />
VOIP MGCP CALLAGENT CREATE<br />
Syntax VOIP MGCP CALLAGENT CREATE CONTACT <br />
Description This command set the call agent address. More than one call agent can be defined to<br />
increas system robustness in case of server failure.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
host<br />
An arbitrary name that identifies the call<br />
agent. The name must not be present<br />
already.<br />
The name can be a maximum of 16<br />
characters long; cannot start with a digit<br />
and cannot contain dots ʹ.ʹ or slash symbols<br />
ʹ/ʹ.<br />
The hostname or IPv4 address of the call<br />
agent. Host can be a maximum of 256 chars<br />
long (when using hostname format).<br />
N/A<br />
N/A<br />
Example<br />
--> voip mgcp callagent create default contact 192.168.102.3<br />
See also VOIP MGCP CALLAGENT LIST
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 419<br />
VOIP MGCP CALLAGENT DELETE<br />
VOIP MGCP CALLAGENT DELETE<br />
Syntax VOIP MGCP CALLAGENT DELETE <br />
Description This command deletes a previously defined call agent created using the VOIP<br />
MGCP CALLAGENT CREATE command.<br />
To show the list of existing CALLAGENT entries, use the VOIP MGCP<br />
CALLAGENT LIST command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
name<br />
A name (or the ID value) that identifies an<br />
existing call agent. To display the existing<br />
calla agent entries, use the VOIP MGCP<br />
CALLAGENT LIST command.<br />
N/A<br />
Example --> voip mgcp callagent delete default<br />
See also VOIP MGCP CALLAGENT CREATE<br />
VOIP MGCP CALLAGENT LIST<br />
VOIP MGCP CALLAGENT LIST<br />
Syntax VOIP MGCP CALLAGENT LIST<br />
Description This command lists information about CALLAGENT entries added using the VOIP<br />
MGCP CALLAGENT CREATE command.<br />
The following information is displayed:<br />
• Call agent ID numbers<br />
• Call agent names<br />
<br />
Note: If a call agent name is longer than 32 chars, the name is shown in a short<br />
format (only the initial part of the name is displayed).<br />
Example --> voip sip fdb list<br />
Gateway call-agents:<br />
ID | Name | Master | Contact<br />
-----|------------|----------|---------------------<br />
1 | default | true * | 172.39.1.201<br />
---------------------------------------------------
420 Chapter 18 – VoIP MGCP<br />
See also VOIP MGCP CALLAGENT CREATE<br />
VOIP MGCP CALLAGENT SHOW
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 421<br />
Chapter 19<br />
VoIP QoS and Media<br />
Introduction<br />
SIP and H323 VoIP signalling protocols typically make use of unreliable transport<br />
protocols like UDP to transfer media information as voice packets. This<br />
transportwasn’t originally designed to transport data for real time applications.<br />
In a multiapplication network environment were traffic typology can be very<br />
variable, real time applications can suffer packet delay and latency due to<br />
overloading of network devices. This candegrade the voice quality (and video)<br />
received from the end user.<br />
On the AT-RG613, AT-RG623 and AT-RG656 Residential Gateway itʹs possible to<br />
assign to the voice/video media packets a high Quality Of Service value in order to<br />
force routers and switches to forward these packets with higher priority compared<br />
to the other type of packets simultaneously passing through the same network<br />
devices.<br />
QoS<br />
To assign a specific priority to the originated voice packets, itʹs possible to specify<br />
the DSCP field value or TOS field value inside the UDP packets used to tranport<br />
voice streams and voice signalling.<br />
The command VOIP QOS SET DSCP is used to set the DSCP value while the VOIP<br />
QOS SET TOS command is used to set the TOS value.<br />
DSCP and TOS are mutually esclusive because they refers to the same IP Header<br />
field using only a different number of bits (3 bits in case of TOS, 6 bits in case of<br />
DSCP) and assigning different packet classification accordingly to the TOS or DSCP<br />
value.
422 Chapter 19 – VoIP Media and QoS<br />
Media<br />
AT-RG613, AT-RG623 and AT-RG656 can be configured to use a specific pool of<br />
ports for media transport.<br />
In this way it is always well known which ports are being used by the system,<br />
making it possible to open the correct firewall ports when media packets must cross<br />
security interfaces.<br />
To configure the RTP pool ports, set the starting port number and the port range<br />
using VOIP MEDIA SET PORTRANGE command. The ports specified by this<br />
command are the RTP ports used as Source Port for outgoing packets and also they<br />
are the ports where incoming RTP packets are expected to be received.<br />
RTCP is also supported as a configurable parameter used to control RTP session.<br />
Itʹs also possible set the Residential Gateway to detect if an incoming RTP flow is<br />
still present or not (e.g. the other end-point was abruptly disconnected or network<br />
has critical problems) forcing the call release if no RTP packet flow has been<br />
detected for the current call for a time longer than the specified observation period.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 423<br />
VoIP QoS Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG 623 and<br />
AT-RG656 Residential Gateway to configure and manage the VoIP QoS module.<br />
VoIP QoS CLI commands<br />
The table below lists the VOIP QOS commands provided by the CLI:<br />
Command<br />
VOIP QOS SET DSCP<br />
VOIP QOS SET TOS<br />
VOIP QOS SHOW<br />
VOIP QOS SET DSCP<br />
Syntax VOIP QOS SET {DSCP | NONE}<br />
Description<br />
This command sets the value of the dscp field in the IP header of RTP voice packets.<br />
<br />
To disable DSCP support (i.e. remove any previous configuration perfomed on<br />
DSCP field on signalling and speech packes) use the VOIP QOS SET NONE<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
dscp-code<br />
The value of dscp field. Acceptable value are<br />
from 0 to 63<br />
none<br />
Example --> voip qos set dscp 24<br />
See also VOIP QOS SET TOS<br />
VOIP QOS SET TOS<br />
Syntax VOIP QOS SET {TOS | NONE}<br />
Description This command sets the value of the tos field in the IP header of RTP voice packets.
424 Chapter 19 – VoIP Media and QoS<br />
<br />
To disable TOS support (i.e. remove any previous configuration perfomed on<br />
TOS field on signalling and speech packes) use the VOIP QOS SET NONE<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
tos<br />
The value of tos field. Acceptable value are<br />
from 0 to 7<br />
none<br />
Example --> voip qos set tos 4<br />
See also<br />
VOIP QOS SET DSCP<br />
VOIP QOS SHOW<br />
Syntax VOIP QOS SHOW<br />
Description<br />
This command shows the value of DSCP and TOS fields used in the IP header of<br />
RTP voice packets.<br />
Example --> voip qos show<br />
Gateway Quality of Service:<br />
-------------------------------------<br />
QOS (DSCP): 24<br />
(TOS):<br />
none<br />
See also VOIP QOS SET DSCP<br />
VOIP QOS SET TOS
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 425<br />
VoIP Media Command <strong>Reference</strong><br />
This section describes the commands available on the AT-RG613, AT-RG 623 and<br />
AT-RG656 Residential Gateway to configure and manage the VoIP Media module.<br />
VoIP Media CLI commands<br />
The table below lists the VOIP MEDIA commands provided by the CLI:<br />
Command<br />
VOIP MEDIA SET PORTRANGE<br />
VOIP MEDIA SET RTCP<br />
VOIP MEDIA SET SESSIONTIMEOUT<br />
VOIP MEDIA SHOW<br />
VOIP MEDIA SET PORTRANGE<br />
Syntax VOIP MEDIA SET PORTRANGE {ANY | }<br />
Description This command sets the port pool available for media transport. Ports are<br />
dynamically allocated in pairs to support new connections; the odd-numbered port<br />
is reserved for RTCP. If the port pool is sold out, new sessions will be refused for<br />
lack of available resource.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
any<br />
ipport<br />
n-ports<br />
any sets the default port range<br />
ipport is theUDP/TCP port number being<br />
set. The range is 1026 to 65534. The value<br />
specified must be an even number..<br />
n-ports are the number of ports. The range is<br />
2 to 32 .; The value specified has to be an<br />
even number.<br />
50600<br />
32<br />
Example --> voip media set portrange 50500/12<br />
See also VOIP MEDIA SET RTCP<br />
VOIP MEDIA SET RTCP<br />
Syntax VOIP MEDIA SET RTCP {OFF | ON }
426 Chapter 19 – VoIP Media and QoS<br />
Description This command enables RTCP.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
off Turn off the RTCP support. off<br />
on<br />
Enable the RTCP support.<br />
Example --> voip media set rtcp on<br />
See also<br />
VOIP MEDIA SET DSCP<br />
VOIP MEDIA SET SESSIONTIMEOUT<br />
Syntax VOIP MEDIA SET SESSIONTIMEOUT <br />
Description This command sets the maximum timeout interval used to detect a fail in the<br />
incoming RTP speech packets. If no RTP packet is received on the UDP port used by<br />
the active call for a time longer than the SESSIONTIMEOUT value, the other<br />
endpoint is considered disconnected and the active call is released.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command and a default value (if applicable).<br />
Option Description Default Value<br />
min<br />
The SESSIONTIMEOUT value expressed in<br />
minutes.<br />
Available values are form 0 mins to 1440<br />
mins (24 hours).<br />
0 mins is equivalent to disable the<br />
SessionTimeOut feature.<br />
0<br />
Example --> voip media set sessiontimeout 1<br />
See also VOIP MEDIA SHOW<br />
VOIP MEDIA SHOW<br />
Syntax VOIP MEDIA SHOW<br />
Description This command shows the media values defined by the VOIP MEDIA SET<br />
PORTRANGE or VOIP MEDIA SET RTCP commands.<br />
Example --> voip media show<br />
Gateway Media:<br />
----------------------------------------------<br />
Port range: 50600/32<br />
RTCP enable:<br />
on
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 427<br />
RTP session time-out:<br />
1 Mins.<br />
See also VOIP MEDIA SET PORTRANGE<br />
VOIP MEDIA SET RTCP<br />
VOIP MEDIA SET SESSIONTIMEOUT
428 Chapter 18 – VoIP MGCP
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 429<br />
Chapter 20<br />
ZTC<br />
Introduction<br />
Wide Area Networks consist of a lot of components (hubs, switches, routers,<br />
residential gateways, set top boxes, PCs) that need to be configured.<br />
The number of components can be very high and often the configuration of these<br />
devices to get them up and running requires a lot of work for network<br />
administrators.<br />
As a result, network administrator operations can be very expensive and in-field<br />
configuration takes a lot of time.<br />
The Zero Touch Configurator (ZTC) is a tool designed to enable a network<br />
administrator to configure and manage network devices remotely and automatically<br />
without end-user intervention.<br />
The Zero Touch Configuration is able to update image software and unit<br />
configuration on multiple devices simultaneously, so administrators can avoid<br />
having to connect to each device separately and repeat the same sequence of actions<br />
for each of them.<br />
Functional blocks<br />
The ZTC is a component-based application, which consists of different logical blocks<br />
that can be distributed on independent runtime environments or machines (see<br />
Figure 23).
430 Chapter 20 - ZTC<br />
ZTC Shell<br />
RMI<br />
HTTP<br />
ZTC Web<br />
Interface<br />
RMI<br />
ZTC Server<br />
LDAP<br />
LDAP Server<br />
WEB Browser<br />
RMI<br />
TFTP plugin<br />
file system<br />
TFTP<br />
TFTP Server<br />
ZTC Client<br />
Figure 23. ZTC network architecture.<br />
ZTC Network Architecture<br />
The ZTC Network Architecture consists of the following parts:<br />
• An LDAP directory service in which data is stored.<br />
• The ZTC Server, that contains all the application logic for:<br />
• User authentication and authorisation<br />
• Data consistency and syntax checking when requesting to add a new device<br />
configuration<br />
• Application logic for creating new configuration scripts<br />
• Application logic to execute commands on the device<br />
• Data Access Object layer to access the data tier<br />
• Several protocols for supporting different kind of clients<br />
• The ZTC WEB Interface. This application lest users interact with the ZTC Server.<br />
Through this interface they can view or update existing configurations, or add<br />
new ones.<br />
• The ZTC Embedded Client. This client is installed on the devices to communicate<br />
with the ZTC Server. Typically, the devices connect to ZTC Server to perform the<br />
following operations:<br />
• Communicate their actual configuration to ZTC Server<br />
• Download, if existing, new configurations from ZTC Server<br />
• The ZTC Shell can be created for testing, not for operational use. Through the<br />
ZTC-Shell, all the main operations can be performed (read, write, user<br />
management). It’s possible to access the ZTC-Server from the ZTC-Shell.<br />
The components of ZTC are independent, and they can run on different machines<br />
and platforms, in a three-tiered architecture fashion.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 431<br />
The core of the application is the ZTC Server. It manages the dialogue with the<br />
directory service backend and performs all operations on data. The ZTC WEB<br />
Interface, used to interact with the ZTC Server, is decoupled from the ZTC server,<br />
and can run on different machines.<br />
ZTC Client<br />
The ZTC Embedded Client, or, shortly, the ZTC Client, is the module running on<br />
the Residential Gateway in charge to communicate with the ZTC server.<br />
ZTC client works accordingly to the so-called ʺConfiguration PULLʺ method. ZTC<br />
Client is in charge to contact the ZTC server passing the current configuration, the<br />
unit identifier and retrieves the new configuration if necessary. ZTC server has the<br />
responsibility to allow the download only of the correct configuration file<br />
depending on the unit identifier (the unit MAC address) and on the configuration<br />
rules defined inside the ZTC Server.<br />
The following three ZTC Client – ZTC Server communication phases are possible:<br />
• Pull-at-startup – This phase is executed when the unit startup.<br />
• Scheduled-pull. - This phase is executed every time the ztcclient polling timeout<br />
expires.<br />
ZTC Client and ZTC Server communicate through TFTP protocol.<br />
The ZTC server IP address con be configured in the ZTC client module in two ways:<br />
statically or dynamically.<br />
• When a static configuration is used, the ZTC Server IPv4 address is defined<br />
explicitly using the ztcclient enable static ztcserveraddr command. This command<br />
set the server IP address that will be used by all the next queries and also turns on<br />
the ztcclient module forcing the module to query the server to retrieve the unit<br />
configuration file.<br />
• When a dynamic configuration is used, the ZTC client module is bind to an<br />
existing IP interface using the ztcclient enable dynamic listeninterface command.<br />
In this way the ZTC client module uses the facilities offered by the dhcpclient<br />
module to force the IP interface to ask to an external DHCP server the ZTC Server<br />
address. When the ZTC client needs to know the ZTC Server address, a DHCP<br />
request is generated by the IP interface requesting a value for option 67 ʺbootfilenameʺ.<br />
The ZTC Client module as ZTC Server IP address uses the value returned<br />
by the DHCP server for option 67.<br />
Similarly to the static configuration, ztcclient enable dynamic listeninterface<br />
command turns on the ztcclient module forcing the module to query the server to<br />
retrieve the unit configuration file.<br />
<br />
ZTC client can be enabled dynamically only if the IP interface where it is<br />
bind, itʹs a dynamic IP interface. Attempting to enable ZTC client module<br />
dynamically on a static IP interface results is an error.
432 Chapter 20 - ZTC<br />
Storing Unit Configuration<br />
The configuration file downloaded from ZTC server is never stored permanently<br />
into the unit flash file system. This solution prevents memory flash failure when too<br />
many write requests are executed.<br />
If the unit restarts, it loses the previous downloaded configuration and starts from<br />
the bootstrap configuration. This behavior allows network administrator to control<br />
the unit configuration based only on the configuration file defined by the ZTC<br />
server framework.<br />
When ZTC Client is enabled, the current running configuration is the result of the<br />
bootstrap configuration plus the unit configuration downloaded from ZTC server.<br />
Any action that save permanently the configuration (e.g. the system configuration save<br />
command) could change the bootstrap configuration file and therefore the resulting<br />
configuration when ZTC Client runs could be unpredictable.<br />
<br />
When ZTC client is enabled, the CLI is locked. To unlock it, press the ʺ+ʺ<br />
key. Unlocking the CLI stops the ZTC client module.<br />
Pull-at-startup<br />
Figure 24<br />
shows the Pull-at-startup phase executed by the ZTC client module when<br />
the Residential Gateway boostraps.<br />
• Considering a scenario where ZTC Client is bind to a dynamic IP interface,<br />
during the bootstrap process, the Residential Gateway uses the facilities provided<br />
by the DHCP client module to setup the IP interface configuration.<br />
• The dynamic IP interface receives the new network configuration and the ZTC<br />
server address in the ʺbootfile-nameʺ DHCP option.<br />
• As soon the network is configured, the ZTC Client runs.<br />
• The ZTC Client contacts the ZTC server, passing in the parameters list the<br />
Residential Gatewayʹs MAC address, the application filename and a value<br />
derived from the current running configuration (that, at boostrap, it is null).<br />
These information define the current device status.<br />
• The ZTC server checks if there is a configuration for the Residential Gateway<br />
looking for the device MAC address into the LDAP server, and if necessary, it<br />
returns the configuration file to the device.<br />
• The device executes the configuration file and starts the ZTC client timeout. The<br />
timeout defines the polling period before ZTC Server will be contacted.<br />
• When the timeout expires the Scheduled-pull phase is executed.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 433<br />
Residential<br />
Gateway<br />
DHCP<br />
server<br />
ZTC Server<br />
LDAP<br />
Database<br />
NULL<br />
Unit<br />
Bootstrap<br />
Setup Dyn<br />
Interface<br />
DHCP Request<br />
DHCP Ack<br />
(ZTC Server address)<br />
Start<br />
ZTCClient<br />
TFTP Read Request<br />
• <strong>Software</strong> Release: <br />
• Unit Identifier: <br />
• Current Unit Config: null<br />
Retrieve Configuration File<br />
TFTP Data Packets<br />
(unit configuration commands list)<br />
Configuration File<br />
Run new conf.<br />
Start ZTC<br />
timeout<br />
ZTC idle<br />
Figure 24. Pull-at-Startup ZTC phase.<br />
Scheduled-pull<br />
Figure 25<br />
shows the Scheduled-pull phase executed by the ZTC client module when<br />
the ztcclient polling timeout expires.<br />
• The ZTC Client contacts the ZTC server, passing in the parameters list the<br />
Residential gateway MAC address, the application filename and the hash key<br />
derived from the current running configuration. These information define the<br />
actual state of the device.<br />
• The ZTC server checks if there is a configuration for the Residential Gateway<br />
looking for the device MAC address into the LDAP server, and if necessary, it<br />
returns the configuration file to the device.<br />
• When the device receives the new configuration, it reboots in order to execute the<br />
new configuration starting from a ʺwell knownʺ status: the boostrap<br />
configuration.
434 Chapter 20 - ZTC<br />
• Because the Residential Gateway never stores the configuration downloaded<br />
from ZTC server, the ZTC client contacts again the ZTC server and execute<br />
exactly the same procedure defined in the Pull-at-startup phase.<br />
Residential<br />
Gateway<br />
ZTC Server<br />
LDAP<br />
Database<br />
ZTC idle<br />
ZTC Timeout<br />
expires<br />
Start<br />
ZTCClient<br />
TFTP Read Request<br />
• <strong>Software</strong> Release: <br />
• Unit Identifier: <br />
• Client Config: current config<br />
Retrieve Configuration File<br />
Configuration File<br />
compare Client<br />
config with<br />
LDAP config<br />
ABORT TFTP<br />
Yes<br />
Is it the<br />
same?<br />
No<br />
TFTP Data Packets<br />
(unit configuration commands list)<br />
Unit<br />
restart<br />
Start<br />
ZTCClient<br />
TFTP Read Request<br />
• <strong>Software</strong> Release: <br />
• Unit Identifier: <br />
• Client Config: null<br />
Retrieve Configuration File<br />
TFTP Data Packets<br />
(unit configuration commands list)<br />
Configuration File<br />
Run new conf.<br />
Start ZTC<br />
timeout<br />
ZTC idle<br />
Figure 25.<br />
Scheduled-pull ZTC phase.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 435<br />
ZTC Command reference<br />
This section describes the commands available on the AT-RG613, AT-RG623 and<br />
AT-RG656 Residential Gateway to configure and manage the ZTC Client module.<br />
ZtcClient commands<br />
The table below lists the ztcclient commands provided by the CLI:<br />
Command<br />
ZTCCLIENT ENABLE DYNAMIC<br />
ZTCCLIENT ENABLE STATIC<br />
ZTCCLIENT DISABLE<br />
ZTCCLIENT SHOW<br />
ZTCCLIENT SET<br />
ZTCCLIENT UPDATE<br />
ZTCCLIENT ENABLE DYNAMIC<br />
Syntax ZTCCLIENT ENABLE DYNAMIC LISTENINTERFACE <br />
Description This command enables the ztcclient and bind it on an existing dynamic IP interface.<br />
This command automatically creates a specific configuration rule that applies to the<br />
IP interface in order to force the dhcpclient module to request the ZTC server<br />
address inside the option list of the DHCP discover request sent to the external<br />
DHCP server.<br />
<br />
This command requests that is defined as dynamic interface,<br />
thus it must have the DHCP flag enabled.<br />
To apply changes to the ZTC client module and turn on it, use the ztcclient update<br />
command.<br />
Options The following table gives the range of values for each option, which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
ipinterface<br />
The name of an existing IP interface.<br />
To see the list of existing interfaces, use the<br />
IP LIST INTERFACE command.<br />
N/A<br />
Example --> ztcclient enable dynamic listeninterface ip0<br />
See also ZTCCLIENT DISABLE
436 Chapter 20 - ZTC<br />
ZTCCLIENT ENABLE STATIC<br />
Syntax ZTCCLIENT ENABLE STATIC ZTCSERVERADDR <br />
Description This command enables the ztcclient, and set the ZTC Server IP address.<br />
To apply changes to the ZTC client module and turn on it, use the ztcclient update<br />
command.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
ztcserveraddr<br />
The IP address of the interface used to<br />
connect to the ZTC Server.<br />
The IP address must be specified in IPv4<br />
format (e.g. 192.168.102.3)<br />
N/A<br />
Example --> ztcclient enable static ztcserveraddr 192.168.102.3<br />
See also ZTCCLIENT DISABLE<br />
ZTCCLIENT DISABLE<br />
Syntax ZTCCLIENT DISABLE<br />
Description This command disables the ztcclient module.<br />
Example --> ztcclient disable<br />
See also ZTCCLIENT ENABLE<br />
ZTCCLIENT SHOW<br />
Syntax ZTCCLIENT SHOW<br />
Description This command shows the ZTC client configuration parameters.<br />
Example The following example shows the ZTC client parameters when a dynamic<br />
configuration is set.<br />
ZTC CLIENT CONFIGURATION<br />
- GENERAL PARAMETERS<br />
enabled: false<br />
dynamic: true<br />
configuration timeout: 60 seconds<br />
server address in use: 192.168.1.10<br />
- DYNAMIC CONFIGURATION
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 437<br />
interface: ip0<br />
- STATIC CONFIGURATION<br />
server address for static configuration: 0.0.0.0<br />
ZTCCLIENT SET<br />
Syntax ZTCCLIENT SET CONFIGTIMEOUT <br />
Description This command changes the value of the configtimeout, which is the polling time<br />
interval before the ZTC client contacts the ZTC Server to check if a new<br />
configuration is available.<br />
Options The following table gives the range of values for each option which can be specified<br />
with this command, and a default value (if applicable).<br />
Option Description Default Value<br />
configtimeout<br />
The time that the ztcclient module stays in<br />
standby before checking the system<br />
configuration against the ztc server<br />
configuration.<br />
Acceptable values are from 20 to 65535 secs<br />
60<br />
Example --> ztcclient set configtimeout 30<br />
ZTCCLIENT UPDATE<br />
Syntax ZTCCLIENT UPDATE<br />
Description This command saves the changes made with ZTCCLIENT SET CONFIGTIMEOUT<br />
and ZTCCLIENT ENABLE DYNAMIC or ZTCCLIENT ENABLE DYNAMIC<br />
commands and turn on the polling timeout.<br />
Example --> ztcclient update
438 Chapter 21 – <strong>Software</strong> Update<br />
Chapter 21<br />
<strong>Software</strong> Update<br />
Introduction<br />
AT-RG600 Residential Gateway software consists of the system application file<br />
(named image) plus additional support files.<br />
All these files are stored permanently into the system flashfs file system and loaded<br />
during the unit bootstrap.<br />
During normal operation mode, to prevent file system corruption, the flashfs file<br />
system is never access directly. Programs that access (read or write) files stored into<br />
flashfs file system, use a copy of the flashfs file system, named isfs (see chapter 1),<br />
running into RAM.<br />
If the unit is powered off, all the changes made into the isfs file system are lost. To<br />
save permanently the contents of the isfs file system into flashfs file system, use the<br />
system configuration save command.<br />
To upgrade the AT-RG600 software, upload a new file or download an existing file,<br />
itʹs possible use one of the following solutions depending on the type of upgrade<br />
requested:<br />
• using FTP<br />
• using TFTP<br />
• using the Windows based Loader application<br />
• using the SwUpdate client module
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 439<br />
FTP server<br />
AT-RG600 Residential Gateway implements an internal FTP server that provides<br />
access to the isfs file system.<br />
FTP connection is used typically to download into the Residential Gateway a new<br />
image file but can be used also to retrieve or to download configuration and support<br />
files too.<br />
To connect the FTP module, simply use a FTP client application and login with the<br />
same username and password used for telnet access.<br />
When connected, itʹs possible browse the isfs file system with the ftp LIST<br />
command.<br />
<br />
When the ftp connection is closed, the content of isfs is copied back into flashfs<br />
and the unit is forced to reboot in order to restart from the new application<br />
code (or with the new configuration files).<br />
TFTP server<br />
Similarly to FTP, AT-RG600 Residential Gateway support also an internal TFTP<br />
server that provide access both to flashfs and isfs file system.<br />
TFTP is a file transfer protocol that is based on UDP transport protocol and<br />
therefore it less reliable than ftp. There is no connection control, but only packets<br />
acknowledge and packet retransmission.<br />
TFTP connection is used typically to download or retrieve configuration and<br />
support files. Differently for FTP, when a file is loaded into the Residential Gateway<br />
using the tftp facility, it doesnʹt result in a system restart when the connection is<br />
closed. Each TFTP connection is protected against uncontrolled access, using the<br />
same name defined for SNMP community write.<br />
To retrieve or download a file from/to the Residential gateway itʹs necessary unlock<br />
the TFTP server sending (TFTP write request command) a special command file<br />
having filename ʺtftplock.keyʺ. This file is a simple ASCII file that includes the TFTP<br />
password without any encryption.<br />
Then, itʹs possible request or sends the configuration file.
440 Chapter 21 – <strong>Software</strong> Update<br />
TFTP Client<br />
TFTP Write Request: tftplock.key<br />
TFTP Write Request: filename<br />
TFTP Data<br />
or<br />
TFTP Read Request: filename<br />
TFTP Data<br />
Figure 26. Access to the Residential Gateway TFTP server.<br />
<br />
The maximum file size that can be downloaded into the Residential Gateway<br />
is 8kbyte. To download files larger than 8kbyte use the FTP service.<br />
Windows Loader<br />
To upgrade the AT-RG600 Residential Gateway a special Windows based<br />
application has been developed: the Loader.<br />
The loader uses the TFTP services provided by the Residential Gateway to<br />
download on the unit the application file plus all the other support files avoiding<br />
the user to download each file separately.<br />
The loader can be used to upgrade an existing software version or can be used to<br />
download a new complete software release if the Residential Gateway is running in<br />
recovery mode.<br />
When the Loader is used to upgrade the Residential Gateway from a previous<br />
software release, all the existing configuration files are kept.<br />
When using the Loader, the IP address of the residential Gateway must be selected<br />
and the SNMP community write name is requested as session password (see Figure<br />
27).
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 441<br />
Figure 27. The Windows Loader<br />
SwUpdate module<br />
FTP, TFTP and Windows Loader are three upgrade solutions based on external<br />
client applications that typically require user manual operation or the development<br />
of dedicated script files.<br />
SwUpdate module is a basic FTP client module running on the Residential Gateway<br />
that contacts periodically a TFTP server and retrieves from it the required software<br />
or support files.<br />
In order to maintain backward compatibility with existing upgrade solutions,<br />
SwUpdate is able to manage software upgrades similarly to the DHCPCONF<br />
feature available on AT-RG200 Residential Gateway family.<br />
SwUpdate retrieves the TFTP Server address from a specific option (option 66 tftpserver-name)<br />
passed by the external DHCP server to the Residential Gateway IP<br />
interface.<br />
It then uses the path passed as filename string to navigate into the TFTP server.<br />
In order to distinguish the correct DHCP Offer (in case more than one DHCP server<br />
is present in the network), the Residential Gateway will consider only DHCP Offers<br />
that include the option 60 (dhcp-class-identifier) with one of the following possible<br />
values depending on the product code:<br />
ʺRG603ʺ
442 Chapter 21 – <strong>Software</strong> Update<br />
ʺRG613TXʺ<br />
ʺRG613TXJʺ<br />
ʺRG613SHʺ<br />
ʺRG613LHʺ<br />
ʺRG613BDʺ<br />
ʺRG623TXʺ<br />
ʺRG623SHʺ<br />
ʺRG623LHʺ<br />
ʺRG623BDʺ<br />
ʺRG656TXʺ<br />
ʺRG656BDʺ<br />
ʺRG656LHʺ<br />
ʺRG656SHʺ<br />
SwUpdate is designed to download only the files that differ or are not present into<br />
the Residential Gateway file-system.<br />
Residential<br />
Gateway<br />
DHCP<br />
Server<br />
TFTP<br />
Server<br />
NULL<br />
Unit<br />
Bootstrap<br />
DHCP Request:<br />
option 66 tftp-server-name<br />
option 60 dhcp-class-identifier<br />
DHCP Offer:<br />
filename: <br />
option 66: <br />
option 60: dhcp-class-identifier = "rg6xx"<br />
Retrieve TFTP list file: MD5SUM<br />
TFTP files: image, derivedata.dat, im.conf, ...<br />
Unit<br />
restart<br />
Figure 28. DHCPCONF like SwUpdate operation mode.<br />
In order to inform the SwUpdate module about which files it must download from<br />
the TFTP server, a special file named MD5SUM must be created on the TFTP server.
AT-RG 600 Residential Gateway – <strong>Software</strong> <strong>Reference</strong> <strong>Manual</strong> 443<br />
When the SwUpdate module connects to the TFTP server, it retrieves immediately<br />
this file and then it download each file reported by this list.<br />
The MD5SUM file is a list of filename where each file name has associated the MD5<br />
value.<br />
To create the MD5SUM file itʹs possible use the md5sum command available under<br />
standard Linux platforms (free md5sum applications are available also under<br />
Windows Operating System).<br />
If a file reported into the MD5SUM list is already present into the Residential<br />
Gateway file-system with the same MD5 value, the SwUpdate skip this download,<br />
otherwise it will download it.<br />
Example:<br />
Assuming the all the files included in the current directory must be downloaded<br />
into the Residential Gateway, the following command must be used to generate the<br />
MD5SUM file:<br />
root# md5sum * > MD5SUM<br />
the MD5SUM file will list the following informations:<br />
96643c6e3af928990ed42a42dda2c554 cleanup<br />
7cf32ce7ba89ab67f977a71ae5b205cd cliconsole<br />
6d3dabc798da4ec9267615f12d1d2a43 consoleinit<br />
810fd9bbababa67844e75e6846805e65 derived_data.dat<br />
fb32c37e1457fcc1304d9cf74cd19bad dnsrelaylandb<br />
444aa423a8d8a2d74640953ff6537948 image<br />
6400dc3f72433a674f99c5b98aa5dae3 im.conf<br />
026238c689022c21468df407a5daaef6 im.conf.factory<br />
b87817d7b9a6c81cc8570deb9e270f34 im.conf.ztc_enabled_dynamic<br />
24ae0c8518b7a98a5aa1c34563032c42 im.descriptions<br />
1d0c14e81301cb630912790d077b79c0 initbun<br />
08d016fe02cc6bde27110dc453e2b7b5 initbun.eg1004<br />
4634050e6bf5e91d5a5872c3eb08d56a initbun.rg603<br />
1b5498efa91b0d901a1235347b15e407 initbun.rg613<br />
fd1fb4825195c080206104ac0443427f initbun.rg613txj<br />
147e3239ce2f712340fa786f0a55a088 initbun.rg623<br />
d55d9bd33ae47f4ea3acb39ae950a952 initbun.rg656<br />
5ed6d58a9482d7aa0b44ff28a1e8ca7e NPimage<br />
6927f315890f4209b8a406a1ee75595a services<br />
0a48b795c03a4a012d1ba77dd647c307 snmpd.cnf<br />
47abd829e3ccf727f9e8b29cbf52ed1e snmpinit<br />
f9ae2f9ec26a5af37418be160fe67339 translate.tab<br />
5318c5d07deb1c00dd42628b0d6f7af6 version<br />
ea8fd2f8c81724291d1b0bcdb8e93df6 xgate_initbun
444 Chapter 21 – <strong>Software</strong> Update<br />
Plug-and-play<br />
If the Residential Gateway is set with dynamic IP interface and the DHCP server<br />
sends the option 66 tftp-file-name togheter with option 60 (dhcp-class-identifier)<br />
equal to same product code of the Residential Gateway, SwUpdate module sets the<br />
server address to the address specified by the tftp-file-name option and will uses the<br />
TFTP protocol to retrieve the MD5SUM file instead of the FTP protocol.<br />
SwUpdate will change the remote directory on the TFTP server accordingly to the<br />
filename option passed in the DHCP Offer message.<br />
TFTP working directory<br />
SwUpdate is able to navigate into the FTP/TFTP server directory.<br />
The working directory can be specified defining in the SwUpdate module a<br />
parameter named path. It identifies the relative path respect the login home<br />
directory where the SwUpdate module expects to found the files.<br />
For example if the home directory is:<br />
/home/manager<br />
and the Residential Gateway path address is set to:<br />
at-rg600-software-xxx<br />
the working directory will be:<br />
/home/manager/at-rg600-software-xxx