Best IT Computer Services in Hisar
With so much Computer use these days revolving around the Internet and communicating with others, it's important that you understand what exactly a network is. Without networks, all communication between your computer and other computers whether it be instant messaging, email, web browsing, or downloading music could not be achieved. This tutorial will strive to teach you about networks and their importance. We will also explain the equipment necessary for you to set up a network in your home. When you are done with this tutorial, you will hopefully have a much greater knowledge of how the world of computers works.
The definition of a network in its most basic concepts is at least two independent devices having the ability to communicate with each other. Networks can range in size from two computers with a cable between them to an office network consisting of 100's or 1000's of devices.
Most home networks consist of 2 or more computers with network cards built into them. They are then connected with an RJ45 cable, or another medium, to a Hub or Router that has a built-in hub. This hub or router is then connected to your Cable modem or DSL modem allowing your computers on the network to access the Internet.
This can also be accomplished with wireless networking as well, and the concepts are all the same. You would just need wireless network cards and a wireless router. You even save a few dollars because you don't need the RJ45 Cables. The only differences are that the wireless network cards and wireless routers are more expensive.
Now that you know what a network is, let's build upon some of these concepts. Now that you know that a network is a bunch of interconnected devices, what do you think a lot of interconnected networks are? Yes, you guessed it right, your actually using one now, it is something called the Internet. Let's look at the word Internet. Inter means between and Net is short for the word network. Internet, therefore, means between networks. That is exactly what the Internet is, it is the connection between a vast amount of networks. When you are connected to the Internet, and you request information whether that be through a website or email, your data is actually traversing many networks that are all independently owned and operated before your data reaches its final destination.
All these networks are able to talk to each other through something called routing, which we will discuss in another tutorial. As you can see, the Internet is not an entity unto itself, but rather comprised of many small parts. Now that you know how to set up a home network, why not set one up so you and your family can both be on the Internet at the same time. Not only will it increase the efficiency of your Internet connection, but also your network will actually make the Internet grow a little bit larger.
I hope you enjoyed this segment of ITCloud.co.in Basic Concept Tutorials.
Feel free to let us know what you think in the email to us.
Introduction
Every machine on the Internet has a unique number assigned to it, called an IP address. Without a unique IP address on your machine, you will not be able to communicate with other devices, users, and computers on the Internet. You can look at your IP address as if it were a telephone number, each one being unique and used to identify a way to reach you and only you.
IPv4 and IPv6 Addresses
There are two flavors of IP Addresses that can be used on a network. The first, and the version that the Internet and most routers are currently configured for, is IPv4 or Internet Protocol version 4. This version uses 32-bit addresses, which limits the number of addresses to 4,294,967,296 possible unique addresses. Some of these addresses, about 290 million, are also reserved for special purposes. Due to the popular growth of the Internet, there has been concern that the pool of possible addresses would be exhausted in the near future. With this in mind, a new version of IP addresses was developed called IPv6, or Internet Protocol version 6, that would change the address size from 32-bit addresses to 128-bit addresses. This change would allow for generous IP address allocations to networks without any foreseeable problem with the number of addresses available. In order to use IPv6 addresses, though, existing routers and hardware would need to be upgraded or configured to use this new version of IP addresses.
As IPv4 is still the most commonly used, this tutorial will be focusing on that version of IP addresses.
The Address Itself
An IP address always consists of 4 numbers separated by periods, with the numbers having a possible range of 0 through 255. An example of how an IP address appears is: 192.168.1.10
This representation of an IP address is called decimal notation and is what is generally used by humans to refer to an IP address for readability purposes. With the ranges for each number being between 0 and 255, there are a total of 4,294,967,296 possible IP addresses.
Out of these addresses, there are 3 special ranges that are reserved for special purposes. The first is the 0.0.0.0 address and refers to the default network and the 255.255.255.255 address which is called the broadcast address. These addresses are used for routing, which will not be covered in this tutorial. The third address, 127.0.0.1, is the loopback address and refers to your machine. Whenever you see, 127.0.0.1, you are actually referring to your own machine. That means if you clicked on this link, http://127.0.0.1, you are actually trying to connect to your own computer, and unless you have a web server running, you will get a connection error.
There are some guidelines to how IP addresses can appear, though. The four numbers must be between 0 and 255, and the IP address of 0.0.0.0 and 255.255.255.255 are reserved and are not considered usable IP addresses. IP addresses must be unique for each computer connected to a network. That means that if you have two computers on your network, each must have a different IP address to be able to communicate with each other. If by accident the same IP address is assigned to two computers, then those computers would have what is called an "IP Conflict" and not be able to communicate with each other.
IP address classes
These IP addresses can further be broken down into classes. These classes are A, B, C, D, E and their possible ranges can be seen in Table: IP address Classes below.
Class Start address Finish address
A 0.0.0.0 126.255.255.255
B 128.0.0.0 191.255.255.255
C 192.0.0.0 223.255.255.255
D 224.0.0.0 239.255.255.255
E 240.0.0.0 255.255.255.255
If you look at the table you may notice something strange. The range of IP address from Class A to Class B skips the 127.0.0.0-127.255.255.255 range. That is because this range is reserved for the special addresses called Loopback addresses that have already been discussed above.
The rest of the classes are allocated to companies and organizations based upon the number of IP addresses that they may need. Listed below are descriptions of the IP classes and the organizations that will typically receive that type of allocation.
Default Network: The special network 0.0.0.0 is generally used for routing.
Class A: From the table above you see that there is 126 class A networks. These networks consist of 16,777,214 possible IP addresses that can be assigned to devices and computers. This type of allocation is generally given to very large networks such as multi-national companies.
Loopback: This is the special 127.0.0.0 network that is reserved as a loopback to your own computer. These addresses are used for testing and debugging your programs or hardware.
Class B: This class consists of 16,384 individual networks, each allocation consisting of 65,534 possible IP addresses. These blocks are generally allocated to Internet Service Providers and large networks, like a college or major hospital.
Class C: There is a total of 2,097,152 Class C networks available, with each network consisting of 255 individual IP addresses. This type of class is generally given to small to mid-sized companies.
Class D: The IP addresses in this class are reserved for a service called Multicast.
Class E: The IP addresses in this class are reserved for experimental use.
Broadcast: This is the special network of 255.255.255.255, and is used for broadcasting messages to the entire network that your computer resides on.
Private Addresses
There are also blocks of IP addresses that are set aside for internal private use for computers not directly connected to the Internet. These IP addresses are not supposed to be routed through the Internet, and most service providers will block the attempt to do so. These IP addresses are used for internal use by companies or home networks that need to use TCP/IP but do not want to be directly visible on the Internet. These IP ranges are:
Class Private Start Address Private End Address
A 10.0.0.0 10.255.255.255
B 172.16.0.0 172.31.255.255
C 192.168.0.0 192.168.255.255
If you are on a home/office private network and want to use TCP/IP, you should assign your computers/devices IP addresses from one of these three ranges. That way your router/firewall would be the only device with a true IP address which makes your network more secure.
Common Problems and Resolutions
The most common problem people have is by accident assigning an IP address to a device on your network that is already assigned to another device. When this happens, the other computers will not know which device should get the information, and you can experience erratic behavior. On most operating systems and devices, if there are two devices on the local network that have the same IP address, it will generally give you an "IP Conflict" warning. If you see this warning, that means that the device giving the warning, detected another device on the network using the same address.
The best solution to avoid a problem like this is to use a service called DHCP that almost all home routers provide. DHCP, or Dynamic Host Configuration Protocol, is a service that assigns addresses to devices and computers. You tell the DHCP server what range of IP addresses you would like it to assign, and then the DHCP server takes the responsibility of assigning those IP addresses to the various devices and keeping track so those IP addresses are assigned only once.
Conclusion
IP addresses and their function on the Internet is an important concept to understand. Hopefully, with this tutorial, you will have a firmer grasp of this concept, which should help you troubleshoot problems and bring a better understanding of how the Internet works.
Introduction
In this tutorial, we will discuss the concept of Ports and how they work with IP addresses. If you have not read our article on IP addresses and need a brush-up, you can find the article "IP ADDRESSES EXPLAINED" If you understand the concepts of IP addresses, then let's move on to TCP and UDP ports and how they work.
The devices and computers connected to the Internet using a protocol called TCP/IP to communicate with each other. When a computer in New York wants to send a piece of data to a computer in England, it must know the destination IP address that it would like to send the information to. That information is sent most often via two methods, UDP and TCP.
The two Internet workhorses: UDP and TCP
UDP? TCP? I know you are getting confused, but I promise I will explain this in very basic terms so that you can understand this concept.
TCP stands for Transmission Control Protocol. Using this method, the computer sending the data connects directly to the computer it is sending the data to and stays connected for the duration of the transfer. With this method, the two computers can guarantee that the data has arrived safely and correctly, and then they disconnect the connection. This method of transferring data tends to be quicker and more reliable but puts a higher load on the computer as it has to monitor the connection and the data going across it. A real-life comparison to this method would be to pick up the phone and call a friend. You have a conversation and when it is over, you both hang up, releasing the connection.
UDP stands for User Datagram Protocol. Using this method, the computer sending the data packages the information into a nice little package and releases it into the network with the hopes that it will get to the right place. What this means is that UDP does not connect directly to the receiving computer like TCP does, but rather sends the data out and relies on the devices in between the sending computer and the receiving computer to get the data where it is supposed to go properly. This method of transmission does not provide any guarantee that the data you send will ever reach its destination. On the other hand, this method of transmission has very low overhead and is therefore very popular to use for services that are not that important to work on the first try. A comparison you can use for this method is the plain old US Postal Service. You place your mail in the mailbox and hope the Postal Service will get it to the proper location. Most of the time they do, but sometimes it gets lost along the way.
Now that you understand what TCP and UDP are, we can start discussing TCP and UDP ports in detail. Let's move on to the next section where we can describe the concept of ports better.
TCP and UDP Ports
As you know every computer or device on the Internet must have a unique number assigned to it called the IP address. This IP address is used to recognize your particular computer out of the millions of other computers connected to the Internet. When information is sent over the Internet to your computer how does your computer accept that information? It accepts that information by using TCP or UDP ports.
An easy way to understand ports is to imagine your IP address is a cable box and the ports are the different channels on that cable box. The cable company knows how to send the cable to your cable box based upon a unique serial number associated with that box (IP Address), and then you receive the individual shows on different channels (Ports).
Ports work the same way. You have an IP address, and then many ports on that IP address. When I say many, I mean many. You can have a total of 65,535 TCP Ports and another 65,535 UDP ports. When a program on your computer sends or receives data over the Internet it sends that data to an IP address and a specific port on the remote computer and receives the data on a usually random port on its own computer. If it uses the TCP protocol to send and receive the data then it will connect and bind itself to a TCP port. If it uses the UDP protocol to send and receive data, it will use a UDP port. Note that once an application binds itself to a particular port, that port can not be used by any other application. It is first-come, first-served.
This all probably still feels confusing to you, and there is nothing wrong with that, as this is a complicated concept to grasp. Therefore, I will give you an example of how this works in real life so you can have a better understanding. We will use web servers in our example as you all know that a web server is a computer running an application that allows other computers to connect to it and retrieve the web pages stored there.
In order for a web server to accept connections from remote computers, such as yourself, it must bind the web server application to a local port. It will then use this port to listen for and accept connections from remote computers. Web servers typically bind to the TCP port 80, which is what the HTTP protocol uses by default, and then will wait and listen for connections from remote devices. Once a device is connected, it will send the requested web pages to the remote device, and when done disconnect the connection.
On the other hand, if you are the remote user connecting to a web server it would work in reverse. Your web browser would pick a random TCP port from a certain range of port numbers, and attempt to connect to port 80 on the IP address of the web server. When the connection is established, the web browser will send the request for a particular web page and receive it from the web server. Then both computers will disconnect the connection.
Now, what if you wanted to run an FTP server, which is a server that allows you to transfer and receive files from remote computers, on the same web server. FTP servers use TCP ports 20 and 21 to send and receive information, so you won't have any conflicts with the web server running on TCP port 80. Therefore, the FTP server application when it starts will bind itself to TCP ports 20 and 21, and wait for connections in order to send and receive data.
Most major applications have a specific port that they listen on and they register this information with an organization called IANA. You can see a list of applications and the ports they use at the IANA Registry. With developers registering the ports their applications use with IANA, the chances of two programs attempting to use the same port, and therefore causing a conflict, will be diminished.
Introduction
When using the Internet most people connect to websites, FTP servers, or other Internet servers by connecting to a domain name, as in www.ITCloud.co.in. Internet applications, though, do not communicate via domain names, but rather using IP addresses, such as 192.168.1.1. Therefore when you type a domain name in your program that you wish to connect to, your application must first convert it to an IP address that it will use to connect to.
The way these hostnames are resolved to their mapped IP address is called Domain Name Resolution. On almost all operating systems whether they be Apple, Linux, Unix, Netware, or Windows the majority of resolutions from domain names to IP addresses are done through a procedure called DNS.
Domain Name Resolutions
As discussed above, Domain Name Resolution is the task of converting domain names to their corresponding IP address. This is all done behind the scenes and is rarely noticed by the user. When you enter a domain name in an application that uses the Internet, the application will issue a command to have the operating system convert the domain name into its IP address, and then connect to that IP address to perform whatever operation it is trying to do.
The way the operating system resolves the domain name is based upon its configuration. For almost all operating systems the default order for Domain Name resolution is as follows:
Hosts File - There is a file called the HOSTS file that you can use to convert domain names to IP addresses. Entries in the HOSTS file override any mappings that would be resolved via a DNS server.
Domain Name System - This is the system used on the Internet for converting domain names to their corresponding IP addresses. Your operating system will connect to the DNS server configured on your computer and have that server return to you the IP address for the domain name you queried it with.
NetBIOS - This only applies to Windows machines and will only be used to map names to IP addresses if all previous methods failed. This method will attempt to map the NetBIOS name you are trying to connect to with an IP address.
It is possible though to change the order that your operating system uses when doing Domain Name Resolution. We will discuss these methods for the Windows and Unix/Linux operating systems below.
Domain Name Resolution on Windows
Windows by default use the above order for Domain Name Resolution. This can be changed though by changing certain registry keys. Their registry keys are:
Registry Key Description
DnsPriority Which corresponds to using the Domain Name System
LocalPriority This refers to the local name of the computer
HostsPriority This is the HOSTS file
NetbtPriority This is using Netbios name mapping
You assign to these keys a priority based upon values ranging between -32768 and 32767. The lower the number you assign to the entry, the higher the priority for that particular resolution provider.
For example, examine the priorities assigned to the values below:
DnsPriority = 30
LocalPriority = 200
HostsPriority = 75
NetbtPriority = 100
What this will do is change the Domain Name Resolution order to the following sequence:
Domain Name System
Hosts file
Netbios Mappings
The Local Computer Name
As you can see I have changed the default order of how Windows will do domain name resolution and the value that had the lowest number had the highest priority when doing domain name resolution.
The location for the above registry subkey's can be found under these registry keys:
Windows 95/98/ME
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSTCP\ServiceProvider
Windows NT, 2000, XP, Win 10
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider
NOTE: For Windows 95/98/ME if the key does not exist, you must create it. In order for these keys to work with NT 4.0, you need to install Service Pack 4.
Domain Name Resolution on Linux and Unix
Unix and Linux have a similar default Domain Name Resolution order as Windows. The operating system will first check its /etc/hosts file and if it does not find an entry for the queried domain, it will then query its configured DNS servers.
The order in which the server resolves domain names can be changed by editing the /etc/host.conf file. This file determines the order that the operating system uses to resolve domain names. The line that we are concerned with is the one that looks like:
order hosts, bind
This tells the operating system to first check the hosts file, and if that fails to use DNS, otherwise known as bind which is the name of the software used to make DNS requests.
You can change the order the operating system uses, by changing the order line. For example, if we wanted to make it so it queried DNS first and the hosts file second we would change the line to read:
order bind, hosts
Currently, the valid values you can place after the order is hosts, bind, nis. NIS stands for the Network Information Service and will not be covered by this article.
Conclusion
As you can see it is not always wise to think that your operating system will always use the default resolution order. Due to it being possible to change the order in which the operating system does Domain Name Resolution, you must keep this in mind when trying to debug problems with resolving domain names.
As always if you have any comments, questions, or suggestions about this tutorial please do not hesitate to tell us in the email.
Introduction
When using the Internet most people connect to websites, FTP servers, or other Internet servers by connecting to a domain name, as in www.ITCloud.co.in Internet applications, though, do not communicate via domain names, but rather using IP addresses, such as 192.168.1.1. Therefore when you type a domain name in your program that you wish to connect to, your application must first convert it to an IP address that it will use to connect to.
The way these hostnames are resolved to their mapped IP address is called Domain Name Resolution. On almost all operating systems whether they be Apple, Linux, Unix, Netware, or Windows the majority of resolutions from domain names to IP addresses are done through a procedure called DNS.
What is DNS
DNS stands for Domain Name System and is the standard domain name resolution service used on the Internet. Whenever a device connects to another device on the Internet it needs to connect to it via the IP address of the remote device. In order to get that IP address, DNS is used to resolve that domain name to its mapped IP address. This is done by the device querying its configured DNS Servers and asking that server what the IP address is for that particular domain name. The DNS server will then query other servers on the Internet that know the correct information for that domain name and then return to the device the IP address. The device will then open a connection directly to the IP address and perform the desired operation.
If you would like a more detailed explanation of the Domain Name System you can find it in topic: The Domain Name System
Enter the Hosts File
There is another way to resolve domain names without using the Domain Name System, and that is by using your HOSTS file. Almost every operating system that communicates via TCP/IP, the standard of communication on the Internet, has a file called the HOSTS file. This file allows you to create mappings between domain names and IP addresses.
The HOSTS file is a text file that contains IP addresses separated by at least one space and then a domain name, with each entry on its own line. For example, imaging that we wanted to make it so that if you typed in www.google.com, instead of going to Google we would go to www.yahoo.com. In order to do this, you would need to find out one of the IP addresses of Yahoo and map www.google.com to that IP address.
One of the IP addresses for Yahoo is 216.109.118.69. If we wanted to map Google to that IP address we would add an entry into our HOSTS file as follows:
216.109.118.69 www.google.com
NOTE: When inputting entries in the hosts file there must be at least one space between the IP address and the domain name. You should not use any web notations such as \, /, or http://. You can disable a specific entry by putting a # sign in front of it.
You may be wondering why this would work as we said previously that when you need to resolve a domain name to an IP address the device will use its configured DNS servers. Normally this is true, but on most operating systems, the default configuration is that any mappings contained in the Hosts file to override any information that would be retrieved from a DNS server. In fact, if there is a mapping for a domain name in a hosts file, then your computer will not even bother querying the DNS servers that are authoritative for that domain, but instead, read the IP address directly from the HOSTS file. It is also important to note that when you add entries to your HOSTS file they automatically start working. There is no need to reboot or enter another command to start using the entries in the HOSTS file.
Please note that there are ways to change the order that your computer performs Domain Name Resolution. If there are problems with HOSTS file not working you may want to read this article that goes into much greater detail on Domain Name Resolution on various operating systems:
Understanding Domain Name Resolution
For reference the HOSTS file is located in the following locations for the listed operating systems:
Operating System Location on Hard Drive
Linux/Unix /etc/hosts
Windows 3.1/95/98/ME c:\windows\hosts
Windows NT/2000/XP Pro c:\winnt\system32\drivers\etc\hosts or c:\windows\system32\drivers\etc\hosts
Windows XP Home/Win 10 c:\windows\system32\drivers\etc\hosts
Netware SYS:ETC/HOSTS
Apple System Folder:Preferences and in the System Folder itself.
In Windows machines, you may not already have a hosts file. If this is the case there will most likely be a sample hosts file called hosts.sam that you can rename to hosts and use as you wish. You can edit this file either from the cmd prompt using Edit or Notepad on windows or VI on Unix/Linux. Really any text editor can open and modify the HOSTS file. It is also recommended that if you use this file that you make periodic backups of it by copying it to another name. Some people recommend that you make this file read-only so that it will be harder to modify by a malicious program, which there are Hijackers that are known to do this, but there are Hijackers such as CoolWebSearch that add entries to the file regardless of whether or not it's read-only. Therefore you should not think that having your HOSTS as read-only will make it safe from modification.
Why would I want to use a HOSTS file?
There are a variety of reasons as to why you would want to use a HOSTS file and we will discuss a few examples of them so you can see the versatility of the little file called the HOSTS file.
Network Testing - I manage a large Internet Datacenter and many times we need to set up test machines or set up development servers for our customer's applications. When connecting to these development or test machines, you can use the HOSTS file to test these machines as if they were the real thing and not a development server. As an example, let's say that you had a domain name for a development computer called development.mydomain.com. When testing this server you want to make sure it operates correctly if people reference it as the true web server domain name, www.mydomain.com. Since if you change www.mydomain.com in the DNS Server to point to the development server everyone on the Internet would connect to that server, instead of the real production server. This is where the HOSTS file comes in. You just need to add an entry into your HOSTS file that maps www.mydomain.com to the IP address of the development server on the computers that you will be testing with, so that the change is local to the testing machines and not the entire Internet. Now when you connect to www.mydomain.com from your computer with the modified HOSTS file you are really connecting to the development machine, but it appears to the applications that you are using that you are connecting to www.mydomain.com.
Potentially Increase Browsing Speed - By adding IP address mappings to sites you use a lot into your HOSTS file you can potentially increase the speed of your browsing. This is because your computer no longer has to ask a DNS server for the IP address and wait to receive it's response, but instead can quickly query a local file. Keep in mind that this method is not advised as there is no guarantee that the IP address you have for that domain name will always stay the same. Therefore if the website owner decides to change their IP address you will no longer be able to connect.
Block Spyware/Ad Networks - This reason is becoming a very popular reason to use the HOSTS file. By adding large lists of known ad network and Spyware sites into your hosts file and mapping the domain names to 127.0.0.1, which is an IP address that always points back to your own machine, you will block these sites from being able to be reached. This has two benefits; one being that it can make your browsing speed up as you no longer have to wait while you download ads from ad network sites and because your browsing will be more secure as you will not be able to reach known malicious sites.
NOTE: It is important to note that there have been complaints of system slowdowns when using a large hosts file. This is usually fixed by turning off and disabling the DNS Client in your Services control panel under Administrative Tools. The DNS client caches previous DNS requests in memory to supposedly speed this process up, but it also reads the entire HOSTS file into that cache as well which can cause a slowdown. This service is unnecessary and can be disabled.
There are HOSTs file that are already made that you can download which contain a large list of known ads servers, banner sites, sites that give tracking cookies, contain web bugs, or infect you with hijackers. Listed below are websites that produce these types of hosts files:
hpguru's HOSTS File can be found here: http://www.hosts-file.net/
The MVPS Host File can be found at: http://www.mvps.org.
Hosts File Project can be found here: http://remember.mine.nu/
If you choose to download these files, please backup your original by renaming it to hosts.orig and saving the downloaded HOSTS file in its place. Using a HOSTS file such as these is highly recommended to protect your computer.
Utilities for your HOSTS file
If you do not plan on modifying your HOSTS file much and plan on using it occasionally for testing purposes, then the basic text editors like VI, Notepad, and Edit are more than adequate for managing your HOSTS file. If on the other hand, you plan on using the HOSTS file extensively to block ads/spyware or for other reasons, then there are two tools that may be of use to you.
eDexter - When you block ads on websites using a HOSTS file, there tend to be empty boxes on the website you are visiting where the ad would normally have appeared. If this bothers you, you can use the program eDexter to fill in the image with one on your local machines such as a clear image or any other one for that matter. This removes the empty boxes and is quick because the replacement image is loaded off of your hard drive.
Hostess - Hostess is an application that is used to maintain and organize your HOSTS file. This program will read your HOSTS file and organize the entries contained in it into a database. You can then use this database to scan for duplicates and to manage the entries. It is a program that is definitely worth checking out if you plan on using the HOSTS file extensively.
Conclusion
As you can see the HOSTS file is a powerful tool if you understand how to use it. You should now know how to use the HOSTS file to manipulate Domain Name Resolution to suit your needs. It is also important that you use its ability to block malicious programs as discussed above to make your computing environment more secure.
As always if you have any comments, questions, or suggestions about this tutorial please do not hesitate to tell us in the Email.