Professional Documents
Culture Documents
19BCT0015
CH.THARUN TEJ
char arr[4];
int i = 0;
while (str[i] != '.')
{
arr[i] = str[i];
i++;
}
i--;
int ip = 0, j = 1;
while (i >= 0)
{
ip = ip + (str[i] - '0') * j;
j = j * 10;
i--;
}
else
return 'E';
}
void separate(char str[], char ipClass)
{
if (ipClass == 'A')
{
int i = 0, j = 0;
while (str[j] != '.')
network[i++] = str[j++];
i = 0;
j++;
while (str[j] != '\0')
host[i++] = str[j++];
printf("Network ID is %s\n", network);
printf("Host ID is %s\n", host);
}
i = 0;
j++;
while (str[j] != '\0')
host[i++] = str[j++];
else
printf("In this Class, IP address is not"
" divided into Network and Host ID\n");
}
}
else if(is_ipv6_address(address))
{
printf("This is an IPv6 address.");
}
else
{
printf("This is an invalid address, that is , neither IPv4 nor IPv6");
}
}
OUTPUT:
2. To carry out Subnetting for entered IP Adddress
Code:
import java.io.*;
import java.util.*;
public class Subnet {
}
System.out.print("ENTER SUBNET VALUE(1,2,3,4,5,6,7,8): ");
int z = Integer.parseInt(br.readLine());
convert(x,z);
}
while(count!=8){
sq = sq.concat("0");
count++;
}
if(x==1){
System.out.println("11111111." + sq + ".00000000.00000000");
}
if(x==2){
System.out.println("11111111.11111111." + sq + ".00000000");
}
if(x==3){
System.out.println("11111111.11111111.11111111." + sq + "");
}
}
}
3.Make Server client socket program for 1)TCP 2)UDP
1.TCP
SERVER CODE:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<sys/socket.h>
#include<arpa/inet.h>
#include<unistd.h>
#include<pthread.h>
void *connection_handler(void *);
//Create socket
socket_desc = socket(AF_INET , SOCK_STREAM , 0);
if (socket_desc == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons( 8888 );
//Bind
if( bind(socket_desc,(struct sockaddr *)&server , sizeof(server)) < 0)
{
//print the error message
perror("bind failed. Error");
return 1;
}
puts("bind done");
//Listen
listen(socket_desc , 3);
//Now join the thread , so that we dont terminate before the thread
//pthread_join( sniffer_thread , NULL);
puts("Handler assigned");
}
if (client_sock < 0)
{
perror("accept failed");
return 1;
}
return 0;
}
message = "Now type something and i shall repeat what you type \n";
write(sock , message , strlen(message));
if(read_size == 0)
{
puts("Client disconnected");
fflush(stdout);
}
else if(read_size == -1)
{
perror("recv failed");
}
return 0;
}
Client code:
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("127.0.0.1");
server.sin_family = AF_INET;
server.sin_port = htons( 8888 );
puts("Connected\n");
close(sock);
return 0;
}
3. UDP CLIENT SERVER PROGRAM
SERVER CODE:
#include <stdio.h>
#include <strings.h>
#include <sys/types.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include<netinet/in.h>
#define PORT 5000
#define MAXLINE 1000
// Driver code
int main()
{
char buffer[100];
char *message = "Hello Client";
int listenfd, len;
struct sockaddr_in servaddr, cliaddr;
bzero(&servaddr, sizeof(servaddr));
CLIENT CODE:
#include <stdio.h>
#include <strings.h>
#include <sys/types.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include<netinet/in.h>
#include<unistd.h>
#include<stdlib.h>
// Driver code
int main()
{
char buffer[100];
char *message = "Hello Server";
int sockfd, n;
struct sockaddr_in servaddr;
// clear servaddr
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_addr.s_addr = inet_addr("127.0.0.1");
servaddr.sin_port = htons(PORT);
servaddr.sin_family = AF_INET;
// connect to server
if(connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0)
{
printf("\n Error : Connect Failed \n");
exit(0);
}