IPv6 Programming

Have Queries? Ask us +91 72592 22234

Course Overview


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

Course Content


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

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
  • 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
  • A Practical Example
  • 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

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

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!

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
  • Example Client Code
  • Example Server Code

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

IPv6 Programming APIs and examples

  • Porting applications in IPv6
  • C
  • C++
  • Java
  • Perl
  • PHP

Customer Reviews


Thanks to Xpertised and the tutor who walked me through all the topics with Practical exposure which is helping me in my current project.
-Waseem

Course was quite helpful in terms of understanding of concepts and practicality. Its really a very friendly environment to learn. The timing were mutually chosen, as we both are working professional. I am quite satisfied with the course.
-Tanmoy

...more
Share:

For Batch Details
Call us at: +91 7259222234

Not sure? Consult Our Experts

Looking for a Training for

Myself

My Team/Organization

I agree to be contacted over mail or phone

or
Call us at: +91 7259222234