Call : (+91) 968636 4243
Mail : info@EncartaLabs.com
EncartaLabs

IPv6 Programming

( Duration: 3 Days )

The IPv6 Programming training course covers basics of IPv6, IPv6 socket programming, socket API and more. In this course, you will learn to Write and Implement IPv6-capable Applications in a Mixed Network Environment and port existing network applications to support IPv6.

By attending IPv6 Programming workshop, delegates will learn to:

  • Understand the benefits of making applications IPv6-capable
  • Perform IPv6 socket programming
  • Rewriting client and server applications to be IPv6 compatible
  • Use IPv6 porting tools
  • Parsing and mapping IPv6 address

This IPv6 Programming class ia aimed at Systems and software engineers, system and software designers, system and software architects, software developers, and application testers.

COURSE AGENDA

1

Overview of IPv6

  • IPv4 vs. IPv6
  • IPv6 Addressing
  • Unicast Addresses
  • Anycast Addresses
  • Multicast Addresses
  • 64-bit MAC Address Assignment
  • Loopback and Unspecified Addresses
  • IPv6 Header Information
  • New Header Format
  • IPv6 Extension Headers
  • DNS infrastructure
  • IPv6 Tunneling
  • IPSec Tunneling
2

Basic Socket Programming

  • What is a socket?
  • Types of Internet Sockets
  • Low level Nonsense and Network Theory
  • IP Addresses and structs
  • IP Addresses, versions 4 and 6
  • Byte Order
  • structs
  • IPv4 Socket Programming
  • IPv6 Socket Programming
  • Changes socket API for IPv6 Support
  • Typical IPv6 Code sequence
3

IPv6 Socket Programming

  • IPv4 Socket API
  • IPv6 Socket API
  • Changes to existing API
  • Porting applications to IPv6
  • Socket address structures
  • Socket functions
  • Address conversion functions
  • Resolving names
  • Multicasting
  • New application design guidelines
  • Real examples of porting process
  • Porting Applications to Support IPv6
  • Tips in IPv6 Programming
  • IPv6 APIs
  • Basic Socket Interface Extensions for IPv6
  • Advanced Sockets API for IPv6
  • IPv4-Mapped Address API
  • Possible Abuse Against IPv6 Transition Technologies
  • An Extension of format for IPv6 Scoped Addresses
  • ProtocolIndependenceUsing the Sockets API
4

Migration from IPv4 to IPv6

  • System Calls or Bust
  • getaddrinfo(): Prepare to launch!
  • socket(): Get the File Descriptor!
  • bind(): What port am I on?
  • connect(): Hey, you!
  • listen(): Will somebody please call me?
  • accept(): Thank you for calling port 3490
  • send() and recv(): Talk to me, baby!
  • sendto() and recvfrom(): Talk to me, DGRAM-style
  • close() and shutdown(): Get outta my face!
  • getpeername(): Who are you?
  • gethostname(): Who am I? Porting IPv4 applications to IPv6
  • using the correct structures
  • INADDR_ANY and INADDR_LOOPBACK
  • address and protocol family constants
  • IPv6 functions for older IPv4 ones where necessary
  • flexible functions that work in both IPv4 and IPv6 environments
  • Data structures
  • sockaddr_in and in_addr
  • in6_addr to store the 128-bit network address
  • sockaddr_in6
  • To port this code to IPv6
  • AF_INET6
  • PF_INET6
5

Client-Server Background

  • A Simple Stream Server
  • A Simple Stream Client
  • Datagram Sockets
  • Blocking
  • select(): Synchronous I/O Multiplexing
  • Handling Partial send()s
  • Serialization: How to Pack Data
  • Son of Data Encapsulation
  • Broadcast Packets: Hello, World!
6

Cross-Platform IPv6 Socket Programming

  • Linux and Mac
  • Windows
  • Socket
  • Storing Addresses
  • Resolving Addresses
  • Historic Name and Address Lookup
  • Modern Address Lookup
  • AI_ADDRCONFIG
  • AI_CANONNAME
  • AI_V4MAPPED
  • AI_ALL
  • IPv6 format
  • AI_IDN
  • AI_CANONIDN
  • Modern Host Name Lookup
  • Printing and Scanning Addresses
  • Interface Checklist
  • Obsolete Interface
  • Protocol Independent Interface
7

changed Socket Interface

  • New protocol family name: PF_INET6
  • Address data structures
  • Net address family name: AF_INET6
  • Net address family name: AF_INET6
  • sockaddr_in6 structure
  • Name-to-address translation functions
  • inet_pton, inet_ntop
  • Address conversion functions
  • getnameinfo
  • getaddrinfo
  • Sockets
  • Socket Programming
  • Port Numbers
  • Sockets
  • Socket=IP address + port number
  • Socket Basics
  • How do sockets work?
  • Socket Functions
  • Typical flow of events for a connection-oriented socket
  • Socket APIs
  • Socket characteristics
  • Sockets characteristics
8

IPv6 Programming APIs and examples

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 6,000 various courses on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting https://www.encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.

Top
Notice
X