Aviatorz Tech. Internet Basics The Internet, sometimes called simply "the Net," is a worldwide system of computer networks composed of other networks and individual computers in which users at any one computer can, if they have permission, get information from any other computer. The internet makes use of the TCP/IP protocol suite (to be covered later) in order to perform connections and communication. The technical coordinating body of the internet is ICANN. Network Solutions used to be responsible for assigning domain names and IP addresses. This function has now been taken over by Internet Corporation for Assigned Names and Numbers(ICANN) which is a division of the U.S. Department of Commerce. Network Solutions still maintains the master database of all domain names and IP addresses. Each distinct version of an Internet standards-related specification is published as part of the "Request for Comments" (RFC) document series. RFCs cover a range of topics in addition to Internet Standards, from discussions of new research concepts to memos about the status of the Internet. World Wide Web While the internet is a collection of interconnected networks and computers, the World Wide Web is the portion of the internet comprised of massive collections of files and resources that are accessible via a web browser. Client computers using a web browser send HTTP requests to a web server which returns the requested file to the client's web browser as shown below.
Web communication and HTML standards are overseen by the World Wide Web Consortium (W3C). Physical Infrastructure In order to handle the enormous amount of traffic that flows on the internet, it has been constructed with backbones. Backbones are high speed networks usually composed of fiber optic cable that are used to connect the smaller networks that make up the internet. Backbones connect to each other at Network Access Points (NAPs). It would obviously be impractical for everyone to spend the money to obtain the equipment necessary to connect directly to the backbones, which is how Internet Service Providers (ISPs) came about. ISPs run a network that connects to an internet backbone at a NAP and sell a service that provides a connection to the internet via their network to individuals and business.
www.esinps.com/user/Aviatorz
Aviatorz Tech. There are now several different ways to connect to an ISP including dial-up modem, DSL, T1 and cable technologies which will be discussed later. Regardless of the connection type, the graphic below shows how these concepts all fit together.
Domains Nameservers are distributed into tiers called domains. Domains are organized in a hierarchical "domain name space" which is often referred to as being like a tree structure. There are several different domain levels as listed below: • •
•
•
Root Level Domains - The top of the tree. Top Level Domains - These are divided into different categories. Some of the more common types are shown below: o .com - Commercial organizations and companies (e.g. yahoo.com) o .edu - Educational institutes(e.g. harvard.edu) o .gov - Government owned institutes(e.g. whitehouse.gov) o .mil - Military domains(e.g. navy.mil) o .net - Gateways and other networks(e.g. internic.net) o .org - Private organizations(e.g. eff.org) o Country codes - International domains (e.g. .ca = Canada) Second Level Domains - These domains make up the rest of networks as all sub-domains are categorized under this heading. So if you visit Intel's site, you are visiting the sub-domain intel.com. Within intel.com many other subdomains may also exist. Hosts - Hosts are the final level in the hierarchy as they are the individual computers that occupy or comprise a domain.
The HTTP Protocol The Hypertext Transfer Protocol (HTTP) is a part of the TCP/IP protocol suite and is the set of rules for exchanging files (text, graphic images, sound, video, and other multimedia files) on the World Wide Web. It is the protocol controlling the transfer and addressing of HTTP requests and responses. The current version is HTTP 1.1 which allows multiple websites to be hosted from a single IP address.
www.esinps.com/user/Aviatorz
Aviatorz Tech. The Uniform Resource Locator
The first part is the ‘service descriptor’ which identifies the protocol being used (in the diagram above it is HTTP). The ‘//’ indicates the start of path (the root directory) which is followed by the domain name. The remainder of the address is the directory path on the server that specifies the location of the file to be fetched. An administrator may wish to keep a web site hidden from the general public which can be done by changing the port that it is accessed on. A TCP port can be specified in the URL such as http://search.harvard.edu:4847. The TCP port can be any number in the range of 0 to 65536. The normal HTTP port id 80. Bandwidth and Throughput The term bandwidth refers the size of the "pipe" that carries data. While often mistakenly used interchangeably with the term bandwidth, throughput refers to a measure of the amount of data flowing through the "pipe" over a given period of time. These 2 concepts are important when troubleshooting performance problems such as slow downloads or web pages taking to long to load. Note that there are other factors that can cause web pages to load slowly, for example, if there are too many processes running on the server or the hardware is outdated. There are applications available that can be used to stress test a server. The table below shows the different connection types and their speeds. Connection
Speed
Medium
Description
Dial-up connection (POTS)
Up to 56 Kbps
Twisted pair
Rapidly being replace by faster technologies.
T-1
1.544 Mbps
Twisted-pair, coaxial cable, or optical fiber
Large company to ISP ISP to Internet infrastructure
E-1
2.048 Mbps
Twisted-pair, coaxial cable, or optical fiber
32-channel European equivalent of T-1
T-2
6.312 Mbps
Twisted-pair, coaxial cable, or optical fiber
Large company to ISP ISP to Internet infrastructure
Digital Subscriber Line (DSL)
256 Kbps to 8 Twisted-pair Mbps
Home, small business, and enterprise access using existing phone lines
Cable modem
512 Kbps to 52 Mbps
Coaxial cable
Home, business, school access
E-3
34.368 Mbps
Twisted-pair or optical European version of T-3 that carries 16 E-l fiber signals
T-3
44.736 Mbps
Coaxial cable
ISP to Internet infrastructure Smaller links within Internet infrastructure
OC-1
51.84 Mbps
Optical fiber
ISP to Internet infrastructure Smaller links within Internet infrastructure
OC-3
155.52 Mbps
Optical fiber
Large company backbone Internet backbone
Asynchronous
622.08 Mbps
Optical fiber
Internet backbone
www.esinps.com/user/Aviatorz
Aviatorz Tech. Transfer Mode When discussing speed, a common task is the calculation of download times. There is a conversion process involved in this since connection speeds are measured in Bits Per Second (Bps) and file sizes are measured in bytes. The formula for calculating download times is a follows: Download time = file size / connection speed. Let's take a look at an example - Let's say you wish to find out how long it will take to download a 1mb file over a 56K dial-up modem connection. The first thing we need to do is convert the connection and the file size into a common measurement as is most commonly done, we will use bits. Our 56 Kilobit connection is easily converted to bits by multiplying by 1000 which gives us a 56000 bits per second connection. To convert the file size to bits, you need to remember that there are 8 bits in a byte and our file is 1 megabyte in size. 1 Megabyte = 1024 Kilobytes and 1 Kilobyte = 1024 Bytes. Thus, we multiply 1 x 1024 x 1024 x 8 which equals 8,388,608. We now plug our number into our forumla such that 8,388,608/56,000 = 149.78 seconds which comes to 2 minutes and 30 seconds (rounded). It is probably still a little confusing so let's do one more example. This time we want to find out how long it will take to download a 25Mb file on a T-1 connection. A T-1 connection operates at 1.544 Mbps which is 1,544,000 bits. Our file is converted to bits by multiplying 25 x 1024 x 1024 x 8 which equals 209,715,200 bits. We then plug these numbers into our formula as follows: 209,715,200/1,544,000 = 135.83 seconds or 2 minutes and 16 seconds (rounded).
Internet Clients There are a wide (and growing) variety of types of internet clients. From a hardware perspective, these can include desktop computers, Portable Digital Assistants (PDAs), E-mail machines, cell phones, WebTV, etc. Different types of software clients are then loaded on these devices in order to access the various resources and services that are available on the internet. Software clients can include applications such as browsers, e-mail clients, FTP clients, etc. Browsers A browser is the software application run on an internet client that provides a GUI interface for accessing files on the WWW. The most popular browsers are Microsoft's Internet Explorer and Netscape's Navigator. Browsers use the HTTP protocol to communicate with web servers. Clients can utilize a couple of different methods to receive content from the internet. Pull technology is used whenever a client pulls information from a server while push technology involves information being automatically delivered to a client without the need for a request. A client needs to have the proper TCP/IP settings configured including IP address, subnet mask and gateway address in order to access the internet. Furthermore, if the client is behind a proxy server, the browser needs to be configured with the proxy server information. Browsers can save files from a visited web site on the local hard drive - a process known as Browser Caching or client-side caching. The next time a request is made to visit this same web site, the files will be pulled from the cache on the local hard drive instead of downloading them over the internet connection. Loading the files from cache is faster than downloading them, however, if changes are made to a cached
www.esinps.com/user/Aviatorz
Aviatorz Tech. web site, you may not be able to see them unless you reload the web page and force the browser to download the pages again. Periodically, the browser cache may need to be cleaned out to preserve disk space. Microsoft's WebTV enables interactive television shows and internet browsing using the television as a monitor. Because WebTV acts as a web browser, web designers should make sure that they test their web sites on this platform as there are differences between how sites are displayed on WebTV and a regular browser. Cookies Cookies are unencrypted text files stored on the client computer that store information about the user for use on a web site. They are commonly used to customize pages for you based on your browser type or other information and preferences that you may have provided the Web site. Most browsers will accept cookies by default, however, the security settings can be changed to reject them. If this is done, some web pages will lose functionality or not work correctly for that user. An expiration date can be set in a cookie. If no expiration is set, the cookie will expire when the browser is closed. A single domain is restricted to only setting 20 cookies and each cookie can be a maximum of 4KB in order to prevent client machines from being inundated with cookies and filling up hard drive space. E-Mail Email addresses appear in the form: user@domainname. When an email is sent, it lands on a server where it remains until it is downloaded by a client. E-mail utilizes 2 protocols to handle the delivery of messages as follows: • •
SMTP - SMTP is responsible for sending mail. Usually it is sent to a POP3 server. POP3 - POP3 is the responsible for downloading email from a POP3 server to an email client such as Outlook or Eudora.
Email is often used for mailing lists which can distribute a newsletter, advertisement, etc to a group of subscribed members that usually "opt-in" to join the list. A Listserver is responsible for handling this type of mass email distribution. Unwanted email is known as SPAM. MIME MIME stands for Multipurpose Internet Mail Extensions and was created because the SMTP protocol was designed to handle ASCII text only. MIME allows for binary files such as images to be sent via email. Web browsers use MIME to understand how to display non-HTML data within the browser. Servers insert the MIME header at the beginning of any Web transmission. Clients use this header to select an appropriate "player" application for the type of data the header indicates. On a similar note BinHex is used to encode Macintosh files for network transfer or email attachements. The File Transfer Protocol The file transfer protocol (FTP) is the primary method of transferring files over the Internet. As a user, you can use FTP with a simple command line interface (for example, from the Windows MS-DOS Prompt window) or with a commercial program that offers a graphical user interface such as WS_FTP.
www.esinps.com/user/Aviatorz
Aviatorz Tech. Two transfer modes are used in FTP. ASCII and BINARY. ASCII mode is used for the transfer of files consisting of plain text while the BINARY mode is used all types of files not consisting of plain text (such as sound, video, executables, images etc). Failure to upload files in the proper format can cause them not to display correctly or at all. You have to enter some specific commands to use FTP unless you have a GUI based FTP client. Common FTP commands that you need to know are: • • • •
•
• • •
open - This command is used to establish a connection to a FTP host. Example: open ftp.idsoftware.com. close - This command is used to disconnect from a FTP host. Example: close. bye - This command is used to quit the FTP client. Example: bye get - This command is used to download a file from a FTP host. Example: get agenda.txt c:\myagenda.txt. This command downloads the file agenda.txt and puts it into the c:\ directory with the name myagenda.txt. The second parameter is optional. put - This command uploads a file from the local computer to a FTP host. Example: put recipe18.txt pudding.txt. This command uploads the file recipe18.txt on the server by the name pudding.txt. The second parameter is also optional for this command. mget - This command downloads multiple files. You can specify criteria for the files by using wildcards. The arguments are same as get. mput - Used to upload multiple files. The arguments are the same as put. type - Used to change transfer mode. Example: type a or type I.
Newsgroups A newsgroup is a discussion about a particular subject consisting of notes written to a central Internet site and redistributed through Usenet, a worldwide network of news discussion groups. The Network News Transfer Protocol (NNTP) is the protocol used by computer clients and servers for managing the notes posted on Usenet newsgroups. Internet Relay Chat Internet Relay Chat (IRC) is a system for chatting that involves a set of rules and conventions and client/server software. On the Web, certain sites provide servers and help you download an IRC client to your computer. Telnet Telnet is a protocol that allows you to connect to remote computers over the Internet. There is a telnet server on the remote host, which the telnet client negotiates with to establish a connection. Once connected, the client becomes a virtual terminal, and allows you to interface with the host computer from your computer. In most cases, you'll be asked to log into the remote system. This usually requires an account on that host. Occasionally you can log in as guest or public without having an account.
www.esinps.com/user/Aviatorz
Aviatorz Tech. Web Servers and Hosting Web Servers A web server is the computer that is responsible for sending web pages, images and applications to internet users. Some companies host their own web servers on their equipment and others outsource this function to another company called a web host. There are 2 main web server types described below: Apache - Apache is an open source web server and is typically run on *nix servers (Unix, Linux, Free BSD, etc), although there is a version available for Windows based servers. Apache has been the leading web server software for quite a while. Microsoft - More recently, Microsoft has developed Internet Information Server (IIS) which is a fully functional web server that runs on Windows NT and 2000 servers. Microsoft has made great gains in this market. Their ASP technology has greatly helped the success of IIS as a web server. Web Hosts: A web host is a company that stores your web site pages and data on their server and deliver web page requests to your visitors for a fee. Web hosts typically provide support and maintenance functions for web sites that they host as well. There are several different types of web hosting web masters can choose from. Free - Free hosting is typically for personal homepages. Companies such as Geocities, Tripod, Angelfire, etc. These types of web hosts typically have stringent bandwidth restrictions in place. Virtual - With virtual hosting, your web site is hosted on a powerful server along with many other web sites. On a shared host it is common that each web site have their own domain name. Dedicated - Like the name implies, your web site will have it's own server. This option is necessary for very large, high traffic web sites. ASP: An Application Service Provider (ASP) is a company or hosted service that provides an online software application that would normally be installed to the customer's local computer or network. The service runs completely off the hosting company's World Wide Web server and is accessed via a web browser such as Microsoft Internet Explorer. An example of an ASP would be ETRADE who provides updated stock services and applications to other stock market related web sites for a fee. ASPs may provide services such as custom web hosting, email, faxing, access to internet software, etc. Management: In order to maintain, protect and troubleshoot your web server, you will need to understand log files. Both Apache and Microsoft provide log files that provide information about server issues, traffic, performance and more. These log files are typically stored in text files, however, there are applications available that can convert this raw data into a more user friendly format. The operating systems that web servers run on typically include network and hardware monitoring software that allows you to view the performance levels of your web server. This can be an important tool for troubleshooting problems.
www.esinps.com/user/Aviatorz
Aviatorz Tech. Networking Bus This is an older topology and essentially has each of the computers on the network daisy-chained to each other. This type of network is usually peer to peer and uses Thinnet(10base2) cabling. It is configured by connecting a "T-connector" to the network adapter and then connecting cables to the T-connectors on the computers on the right and left. At both ends of the chain the network must be terminated with a 50 ohm impedance terminator.
As you can see if computer #1 sends a packet to computer #4, it must pass through computers #2 and #3, creating excess traffic. Star The star is probably the most commonly used topology today. It uses twisted pair(10baseT or 100baseT) cabling and requires that all devices are connected to a hub.
Ring The ring topology looks the same as the star, except that it uses special hubs and ethernet adapters. The Ring topology is used with Token Ring networks. Hybrid - Hybrid topologies are combinations of the above and are common on very large networks. For example, a star bus network has hubs connected in a row (like a bus network) and has computers connected to each hub as in the star topology.
Mesh - In a true mesh topology every node has a connection to every other node in the network. A full mesh network can be very expensive, but provides redundancy in case of a failure between links.
www.esinps.com/user/Aviatorz
Aviatorz Tech. Internet Devices • • •
NIC - Stands for Network Interface Card and is the adapter card that is installed in a computer that provides connectivity to a network. Hub - A hub is used to connect computers on an ethernet network. Modems - The most common and inexpensive way for home users to connect to the internet is via the use of a modem connected to telephone lines. While this technology is rapidly being replaced by DSL and Cable technologies, you will still need to know about this connection type. Command Hayes Corporation developed a smart modem which accepted AT ATA type commands. This is now a widely accepted standard that can be used to directly communicate with the modem (via hyperterminal). ATD To the right are some of the common AT commands that you may ATH need to know. ATZ
•
•
•
•
•
•
•
Purpose Answer Call Dial Hang Up Reset
When using a modem, call waiting should be disabled otherwise your connection will be disabled when incoming telephone calls come in. Special modems are also used for newer DSL and Cable technologies. These modems are often Cisco routers. Repeater - Boosts signals in order to allow a signal to travel farther and prevent attenuation. Attentuation is the degradation of a signal as it travels farther from its origination. Repeaters do not filter packets and will forward broadcasts. Both segments must use the same access method, which means that you can't connect a token ring segment to an Ethernet segment. Repeaters can connect different cable types. Bridges - Functions the same as a repeater, but can also divide a network in order to reduce traffic problems. A bridge can also connect unlike network segments(ie. token ring and ethernet). Bridges create routing tables based on the source address. If the bridge can't find the source address it will forward the packets to all segments. Switch - A switch prevents traffic jams by ensuring that data goes straight from its origin to its proper destination, with no wandering in between. Switches remember the address of every node on the network, and anticipate where data needs to go. It only operates with the computers on the same LAN. It isn't smart enough to send data out to the internet, or across a WAN. These functions require a router. Routers - A router will do everthing that a bridge will do and more. Routers are used in complex networks because they do not pass broadcast traffic. A router will determine the most efficient path for a packet to take and send packets around failed segments. Unroutable protocols can't be fowarded. Gateways - Often used as a connection to a mainframe or the internet. Gateways enable communications between different protocols, data types and environments. This is achieved via protocol conversion, whereby the gateway strips the protocol stack off of the packet and adds the appropriate stack for the other side. Firewall - Either a hardware or software entity that protects a network by stopping network traffic from passing through it. In most cases, a firewall is placed on the network to allow all internal traffic to leave the network (emails to the outside world, web access, etc.), but stop all traffic from the outside world from entering the internal network. While firewalls are most often found
www.esinps.com/user/Aviatorz
Aviatorz Tech.
•
•
•
•
on corporate networks, there are solutions available for client/home computers called personal firewalls. There are several different types of filtering that firewalls can provide. With filtering in place, each IP network packet is examined to see if it matches one of a set of rules defining what data flows are allowed. These rules identify whether communication is allowed based upon information contained within the internet and transport layer headers and the direction in which the packet is headed (internal to external network or vice-versa). Packet filters typically enable you to manipulate (that is, permit or prohibit) the transfer of data based on the following controls: o Physical network interface that the packet arrives on o Address the data is coming from (source IP address) o Address the data is going to (destination IP address) o Protocol o Source port o Destination port Internet Applicances - Internet appliances are increasing in popularity for home use due to their very low cost. Internet appliances possess very little hardware power and are designed to perform limited internet tasks such as email and web browsing. Palm Pilot's are handheld computers that can perform a variety of tasks. Cache Server - A Cache server saves Web pages and other files that users have requested so that subsequent requests for the same data can be retrieved from the cache server rather than downloading the information again. Many proxy servers offer this functionality. Proxy Server - A proxy server acts as a middle-man between clients and the Internet providing security, administrative control, and caching service. When user makes a request for an internet service, if it passes filtering requirements, the proxy server looks in its local cache of previously downloaded web pages. If the item is found in cache, the proxy server forwards it to the client. This reduces bandwidth through the gateway. If the page is not in the cache, the proxy server uses Network Address Translation (NAT) to use one of its own IP addresses to request the page from the appropriate server. CSU/DSU - A CSU/DSU (Channel Service Unit / Data Service Unit) is a piece of equipment that connects a leased line from the telephone company to the customer's equipment (such as a router). Although CSU/DSU's look similar to modems, they are not modems, and they don't modulate or demodulate between analog and digital. All they really do is interface between a 56K, T1, or T3 line and serial interface (typically a V.35 connector) that connects to the router. Many newer routers have 56K or T1 CSU/DSUs build into them.
www.esinps.com/user/Aviatorz
Aviatorz Tech. TCP/IP Internet Protocol(IP) IP is a connectionless protocol, which means that a session is not created before sending data. IP is responsible for addressing and routing of packets between computers. It does not guarantee delivery and does not give acknowledgement of packets that are lost or sent out of order as this is the responsibility of higher layer protocols such as TCP. Transmission Control Protocol(TCP) As opposed to IP, TCP is connection oriented and assures reliable delivery of packets. When the destination host receives a segment it sends back an acknowledgement(ack). If an ack is not received by the source host within a certain period of time then the data is retransmitted. TCP uses sockets and ports to exchange data between applications. Ports provide a specific and universal location for message delivery, while sockets use the host ip address, port number and the type of service (TCP or UDP) to create a reliable connection. TCP/IP Addressing Every IP address can be broken down into 2 parts, the Network ID(netid) and the Host ID(hostid). All hosts on the same network must have the same netid. Each of these hosts must have a hostid that is unique in relation to the netid. IP addresses are divided into 4 octets with each having a maximum value of 255. We view IP addresses in decimal notation such as 124.35.62.181, but it is actually utilized as binary data so one must be able to convert addresses back and forth as shown in the following table. When converting binary data to decimal, a "0" is equal to 0. "1" is Decimal Binary equal to the number that corresponds to the field it is in. For example, 128 10000000 the number 213 would be 11010101 in binary notation. This is 64 01000000 calculated as follows: 128+64+0+16+0+4+0+1=213. Remember that this only represents 1 octet of 8 bits, while a full IP address is 32 bits 32 00100000 made up of 4 octets. This being true, the IP address 213.128.68.130 16 00010000 would look like 11010101 10000000 01000100 10000010. 8 00001000 4
00000100
2
00000010
1
00000001
IP addresses are divided into classes as shown in the table below: Class A addresses are for networks with a large number of hosts. The Class Range first octet is the netid and the 3 remaining octets are the hostid. Class A 1-126 B addresses are used in medium to large networks with the first 2 B 128-191 octets making up the netid and the remaining 2 are the hostid. A class C is for smaller networks with the first 3 octets making up the netid C 192-223 and the last octet comprising the hostid. D 224-239 E
240-255
Class D addresses are used for multicast broadcasts and class E addresses have been reserved for future use. You will not likely come into contact with addresses from these ranges. There are several other special addresses and ranges that you should know.
www.esinps.com/user/Aviatorz
Aviatorz Tech. The Loopback address is 127.0.0.1. This address is used to determine if TCP/IP has been properly installed on your computer. This can be done by pinging 127.0.0.1. There are also 2 private address ranges that are used for private networks. These are 10.x.x.x and 192.168.x.x. Subnetting A subnet mask blocks out a portion of an IP address and is used to differentiate between the hostid and netid. The default subnet masks are as follows: Class
Default Subnet Mask
Class A 255.0.0.0 Class B 255.255.0.0 Class C 255.255.255.0 Ports TCP uses port numbers for services. The port numbers for common services are: 21 FTP 23 Telnet 25 SMTP 80 HTTP 110 POP3 These ports are the default, and if you change the service to another port, those accessing it must specify the new port in their request. For example, if the web service is changed from port 80 to port 8080, the URL to access our site becomes: http://www.mcmcse.com:8080. DHCP DHCP stands for Dynamic Host Configuration Protocol and provides a solution that automatically assigns IP addresses to computers on a network. When a client is configured to receive an IP address automatically, It will send out a broadcast to the DHCP server requesting an address. The server will then issue a "lease" and assign it to that client. The time period that a lease will last can be specified on the server. Some of the benefits of DHCP include the following: • • • •
Prevents users from making up their own IP addresses. Prevents incorrect gateway or subnet masks from being entered. Decreases amount of time spent configuring computers especially in environments where computers get moved around all the time. Handy in situations where you have a large sales staff that work remotely. On that one day they bring their laptops and they can just plug them into the network and they are all set.
Host Names As opposed to NetBIOS names (Microsoft-only), host names exist is all operating systems (Microsoft, Unix, etc.). Host names can be mapped to IP addresses to make referencing hosts easier as you don't have to remember an IP address. There are several different ways that host names can be resolved to IP addresses, the most common of which are DNS and WINS servers. DNS is the more popular of the 2 as it is supported by all platforms and is the name resolution system used on the internet.
www.esinps.com/user/Aviatorz
Aviatorz Tech. On a small network, host name-to-IP resolution can be accomplished through the use of HOSTS files. A proper hosts file entry begins with the IP address followed by the host name and any comments as in the following example: 155.71.24.60 mcmcse #comments go here DNS The internet once used hosts files to resolve IP addresses to host names or domain names. The internet grew to the point where the administration and the traffic needed to maintain this file became unbearable and DNS was born. A DNS client(aka resolver) sends requests to the DNS nameserver which responds with the requested info, another server to query or a failure message. This process is very similar to calling an operator. You call them with a name, they check their database and give you the phone number. There are a variety of roles a nameserver can satisfy within the zone that they are responsible for: • •
•
Primary Nameserver - Gathers DNS information from local files and is a focal point for adding hosts and domains. Secondary Nameserver - Gathers the data for its' zone(s) from another DNS server. Secondary nameservers provide redundancy, traffic on primary server and quicker access for locations that are remote in regards to the primary server. Caching Only Servers - These do not have a zone that they are responsible for. Their databases only contain info that is received from resolutions that it has made since the the server was last started.
Different records are used in the DNS database for different types of resources on a network. Below are the most common DNS record types. Type Description SOA
A Start of authority (SOA) record is the first entry in every DNS server. It contains the email address of the DNS server's administrator and other information about DNS server database.
A
Maps an IP address to a host's name.
NS
This record is used to designate other name servers.
CNAME
Host's canonical name used for creating aliases. An example would be our labs located at lab.mcmcse.com. While the contents of this web page are actually hosted on another server, a CNAME record has been set up giving the appearance that these pages are a part of MC MCSE.
MX
Points to the Mail server for the domain.
LDAP LDAP stands for Lightweight Directory Access Protocol which is used by programs to query directories. Remote Access Protocols The following describes some of the various connections protocols used to connect to the internet: • •
SLIP - Stands for Serial Line Internet Protocol and is an older connection protocol that has been largely replaced by PPP. SLIP is only able to transport TCP/IP. PPP - Point-to-point Protocol (PPP) is a method for connecting a personal computer to the Internet using a standard phone line and a modem. The
www.esinps.com/user/Aviatorz
Aviatorz Tech.
•
•
•
•
•
difference between PPP and other, older dial-up procedures is that a PPP setup will establish a direct Internet connection that allows the PC to use TCP/IP (Internet-based) applications. PPTP - The Point to Point Tunneling Protocol (PPTP) provides for the secure transfer of data from a remote client to a private server by creating a multiprotocol Virtual Private Network(VPN) by encapsulating PPP packets into IP datagrams. Setting Up PPTP requires a PPTP Client, PPTP Server and a Network Access Server(NAS). PPTP does not support the Appletalk protocol. PPPoE - PPPoE stands for Point-to-Point Protocol over Ethernet. In the past, most internet users were connected to the internet via a serial modem, however, newer technologies has found users connecting to the internet with Ethernet such as with a DSL connection. PPPoE is a proprietary method of creating a virtual connection between an ISP's network and a client machine. IPsec - IPSec is a suite of Internet-standard protocols that allow secure, encrypted communications between two computers over an insecure network. IPSec provides end-to-end security, meaning that the IP packets are encrypted by the sending computer, are unreadable en route, and can be decrypted only by the recipient computer. L2TP - L2TP creates a tunnel through a public network that is authenticated on both ends, uses header compression, and relies on IPSec for encryption of data passed through the tunnel. L2TP works like PPTP in that it creates a "tunnel", but uses IPSec encryption in order to support non-IP protocols and authentication. SSL - SSL (Secure Sockets Layer) uses a technique called public-key cryptography to provide encrypted connections. This enables you to move information across the Internet with confidence that it will not be intercepted or modified in transit. This is heavily used in e-commerce and can be identified by a URL that begins with HTTPS.
Troubleshooting Tools The following are the most common tools used for troubleshooting TCP/IP on the internet. Probably the most important. This verifies that TCP/IP is configured correctly and that a PING connection can be made. WINIPCFG
Allows you to view TCP/IP settings and configuration as well as release/renew addresses with a DHCP server.
IPCONFIG
Same as above for use on NT systems.
TRACERT
Enables you to view the route to a specified host. This will show how many hops the packets have to travel and how long it takes.
ROUTE
View or change entries in the routing table.
ARP
View and add entries to the ARP cache.
NETSTAT
Display protocol information and connection status
NBTSTAT
Check NETBIOS connections and update LMHOSTS cache.
NSLOOKUP Used to verify name resolution (DNS)
www.esinps.com/user/Aviatorz
Aviatorz Tech. Development Internet File Formats Most browsers can display GIF, GIF89a and JPEG formats while newer browsers have added support for the PNG format. Following is a list of the different file formats that one might find on the internet. AVI - Audio Visual Interleave is a digital file format for audio and video. This type of video is composed of JPEG images laced together in a very quick slide show. AVIs tend to have large file sizes and when compressed, they tend to lose quality. AVIs can be played with Windows Media Player. BMP - BMP files are the default bitmapped images used in on Windows operating systems. BMP files can support up to 16.7M colors. GIF - Graphics Interchange Format is a palette based format that can have a maximum of 256 colors, or 8 bits, chosen from a total of 16.7 Million, or 24 bits. GIFs can also be animated (GIF89a format only) and support transparency. Flash - Flash is used to create vector graphics-based animation programs that are small enough to stream across a normal modem connection. In order for a web browser to display Flash animation, a plug-in must be installed on the user's system. For more information about the difference between vector and bitmap images read this tutorial on the subject. JPEG - JPEG is a 24 bit bitmap format that can be a very efficient way to compress graphics for web sites due to its use of lossy compression. You can select how much to compress a file, and therefore how much information is lost. The JPEG format does not support animation or transparency. MOV - MOV is a digital movie format for video and audio on the web. It is played with Quicktime. MPEG - Stands for Moving Picture Experts Group, is the name of family of standards used for coding audio-visual information (e.g., movies, video, music) in a digital compressed format. The major advantage of MPEG compared to other video and audio coding formats is that MPEG files are much smaller for the same quality. This is because MPEG uses very sophisticated compression techniques. MPEG layer 3 (MP3) is a popular compressed audio format that reduces file size greatly without much loss in quality. PDF - Portable Document Format files can be read on any platform with Adobe’s Acrobat Reader. In order to view PDF files in a web browser, a plug-in must be installed. PNG - Portable Network Graphics was designed to replace the GIF format, and challenge JPEG for many purposes. PNG is capable of color depths from two colors, or 1 bit, to 16.7 million colors with an Alpha channel, or 32 bit and supports transparency. TIFF - TIFF files are bitmap images commonly used in desktop publishing, faxing, 3D applications, and medical imaging applications. A plug-in is required to view TIFF images in a browser.
www.esinps.com/user/Aviatorz
Aviatorz Tech. VRML - Virtual Reality Modeling Language allows the display of 3-D objects within a web browser with the installation of a plug-in. Shockwave - Supports animation, audio and video on the web. Shockwave is installed as a Netscape plug-in or an ActiveX control. QuickTime - This format created by Apple supports video, audio, and animation to be displayed with its strength laying in the ability to show 3-D photos and artwork Real Player - Plays streaming RealAudio and RealVideo files. Streaming media software utilizes User Datagram Protocol(UDP), Real Time Transport Protocol(RTP) and Real Time Streaming Protocol(RTSP). Windows Media Player - This player was developed by Microsoft and plays a wide variety of media types. Programming In order to pass the exam, you do not need to know how to program, but you do need to know the various programming languages and their properties as listed below. It is important to note the difference between scripts that are executed on the server (server-side) and those that are performed on the client (client-side). •
•
• • •
•
•
3 Tier Model - This concept organizes applications into 3 parts that operate in different locations on a network. The parts are: o The presentation or workstation - responsible for the presentation of data, receiving user events and controlling the user interface o The business logic or application - acts as the server for client requests from workstations o The database - responsible for data storage ASP - An Active Server Page (ASP) is an HTML page that includes one or more scripts that are processed on a Microsoft Web server (server-side) before the page is sent to the user. Because the server only returns HTML back to the client, these pages can be viewed in almost any web browser and do not require a plug-in or other 3rd party software. This technology is a feature of Microsoft's web server known as Internet Information Server (IIS). ASP allows for the creation of user specific environments and interactive web pages. C - The C programming language is one of the oldest and is used for writing applications and operating systems. C++ - The newer object-oriented version of C. DHTML - Dynamic HTML is a client side web technology that enables elements inside your web page to be dynamic. DHTML scripts are scripts can be written in a number of languages, although the most popular are JavaScript and VBscript. DHTML scripts utilize and access the DHTML features of your 4+ generation browser. DTD - A DTD is a "Document Type Definition" which specifies the syntax (grammatical structure) of a web page in SGML, the Standard Generalized Markup Language of which HTML is an application. SGML is an international standard for the definition of device-independent, system-independent methods of representing texts in electronic form such as web pages. Java - Developed by Sun Microsystems, Java is an object-oriented client-side programming language derived from C++ that is run on a client with the use
www.esinps.com/user/Aviatorz
Aviatorz Tech. • • •
•
•
•
• • •
•
•
of a Java Virtual Machine. Java applications found on the web are known as applets. Java is platform independent. Javascript - Developed by Netscape, Javascript is a client-side scripting language that can be used to provide a variety of functionality to a web site. Jscript - JScript is a script language from Microsoft that is designed for use within Web pages is Microsoft's equivalent to Netscape's JavaScript. JSP - JavaServer Pages provide a simplified, fast way to create web pages that display dynamically-generated content. You can use JSP tags or scriptlets to generate the dynamic content. The logic that generates the content is encapsulated in tags and JavaBeans components and tied together in scriptlets, all of which are executed on the server side. On the server, a JSP engine interprets JSP tags and scriptlets, generates content (for example, by accessing JavaBeans components, accessing a database with JDBC technology, or including files), and sends the results back in the form of an HTML (or XML) page to the browser. The function of JSP is similar to ASP, however, JSP is an open standard. Perl - Perl (Practical Extraction and Reporting Language) is a server-side script programming language that is used largely as a language for developing CGI programs. CGI stands for Common Gateway Interface and is a standard way for a Web server to pass a Web user's request to an application program. CGI programs can tend to be server intensive. Perl requires that a Perl Interpreter is loaded on the web server. PHP - PHP is a general-purpose, server-side scripting language that is especially suited for Web development and can be embedded into HTML. PHP lets you create dynamic web pages which are treated just like regular HTML pages and you can create and edit them the same way you normally create regular HTML pages. Servelets - Java Servlets are generic extensions to Java-enabled servers. Their most common use is to extend Web servers, providing a very secure, portable, and easy-to-use replacement for CGI. A servlet is a dynamically loaded module that services requests from a Web server. It runs entirely inside the Java Virtual Machine. Because the servlet is running on the server side, it does not depend on browser compatibility. VBScript - VBScript is a subset of Visual Basic designed for use on the World Wide Web. It has been offered as an alternative to JavaScript and a means of accessing ActiveX controls and Java applets. Visual Basic - A programming language with a graphical environment from Microsoft used to create applications. XML - XML is the Extensible Markup Language. It is designed to improve the functionality of the Web by providing more flexible and adaptable information identification. It is called extensible because it is not a fixed format like HTML (a single, predefined markup language). Instead, XML is actually a `metalanguage' -- a language for describing other languages. XHTML - The evolution of HTML has essentially stopped. Instead, HTML is being replaced by a new language, called XHTML. XHTML is in many ways similar to HTML, but is designed to work with the new eXtensible Markup Language, or XML, that will soon serve as the core language for designing all sorts of new Web applications, in which XHTML will be only one of many "languages". XHTML is designed to work with these other languages, so that different documents, in different languages, can be easily mixed together. XSL - Stands for Extensible Stylesheet Language and is a language for expressing style sheets. An XSL style sheet is, like with CSS, a file that
www.esinps.com/user/Aviatorz
Aviatorz Tech.
•
describes how to display an XML document of a given type. Separating the document's content and the document's styling information allows displaying the same document on different media (like screen, paper, cell phone), and it also enables users to view the document according to their preferences and abilities, just by modifying the style sheet. WML - Wireless Markup Language, formerly called Handheld Devices Markup Languages (HDML), is a language that allows the text portions of Web pages to be presented on cell phones and PDAs via wireless access. WML is part of the Wireless Application Protocol (WAP). There are filter programs available that can convert HTML pages into this format.
Databases Databases have become a very common entity on the internet and are used to store a wide variety of information including customer contact info, mailing lists, reports and much more. There are a couple of different types of databases as follows: •
Flat-file - This type of database stores all of its information in one table. While this type of database is still used to store smaller amounts of information, it is not a good solution for larger information stores.
•
Relational - A relational database stores information in tables with the ability to link data between tables at the record level. For this reason relational databases are faster and more scalable.
Information is retrieved and updated in databases via the use of the Structured Query Language (SQL). In order for programs to use SQL requests that will access databases without having to know their proprietary interfaces, the Open Database Connectivity (ODBC) application programming interface (API) was developed. ODBC can be used to allow a web server to pull information out of a database and return the data in HTML form to a web browser. A similar function is provided by JDBC which allows Java applications to connect to a database and return information.
Security Encryption Encryption alters data into an unreadable form so that if the data is intercepted, it will be useless to those that view it unless they the keys necessary to decode the data. Most encryption is done using a mathematical formula called an algorithm which includes keys that are used to decrypt the data. Public key encryption is an encryption method that utilizes 2 keys in which 1 key is used to encrypt the data and is available publicly while the other key is kept on the users computer and is used to decrypt the data. There are several different types of encryption algorithms: •
•
One-Way encryption is a particular form of encryption in which the original data can't be derived from the encrypted data. If Host A sends data to Host B, Host A encrypts the data, sends the result to Host B, and Host B compares the encrypted data from point A with its idea of what the result should be. MD5 and SHA use one-way encryption algorithms. Symmetric encryption standards use the same key to encrypt and decrypt data. DES, Triple DES and Skipjack are all symmetric encryption algorithms.
www.esinps.com/user/Aviatorz
Aviatorz Tech. •
• •
Asymmetric encryption, also called public-key encryption, relies on two pairs of keys to encrypt and decrypt a message. Each pair consists of a private key known only to its user and a published public key. When a user encrypts a message, he uses his private key and the recipient’s public key to encode the data. The recipient then uses his private key and the sender’s public key to decode the message and verify the identity of the sender. Blowfish, RC2, RC4, and RC5 use asymmetric encryption. A public-key infrastructure is a system for issuing public and private keys, and disseminating public keys usually in the form of digital certificates for use in decrypting messages or certifying the identity of a sender. SSL stands for Secure Sockets Layer and provides data encryption and authentication services which are important for e-commerce transactions. HTTPS signifies that the web page is using the Secure Sockets Layer (SSL) protocol and is providing a secure connection. A server SSL certificate is used for internet business transactions allowing customers to verify that a business is legitimate. CA certificates are used to identify the companies that are responsible for issuing certificates to others and are known as a Certificate Authority. Object-signing certificates are for signing objects such as files to provide information to customers. S/MIME certificates are used to protect/encrypt sensitive email.
VPNs VPN stands for virtual private network. A VPN provides secure communications over public telecommunications infrastructures by utilizing encryption and a tunneling protocol such as PPTP and L2TP. A VPN is a virtual private network and is designed for situations where security is paramount such as allowing outsiders to connect to a corporate LAN. When selective access is provided to entities outside an organization, an intranet becomes an extranet. Extranets can potentially allow unwanted internet users access to your company network which is why VPNs are commonly used with extranets. Attacks The majority of all attacks come from the internal network. Disgruntled employees, corporate spies, mistakes and visiting guests are all potential sources of attacks. There are ways to track attacks before and after they happen using tools built into most web servers as well as 3rd party software. Such actions can include auditing the server's log files, investigating and configuring notification for multiple logon failures and unauthorized access attempts and utilizing network monitoring software. The various types of attacks are listed below: •
•
•
DOS - A denial of service (DoS) attack is a common type of attack in which false requests to a server overload it to the point that it is unable to handle valid requests. There are several different types of DoS attacks including Syn Flooding and Ping Flooding. Syn Flooding - In a SYN Flood attack, the client uses an unavailable IP address so that the server's SYN-ACK message never reaches its destination. This results in a "half-open" connection. The attacker floods the server with these types of requests making the server unable to respond to new valid requests. Ping Flooding - The ping utility utilizes the ICMP protocol. A Ping Flooding attack is one in which the server is overloaded with Ping requests that it cannot keep up with. A similar attack called "Ping of Death" sends overly large packets (over 64 bytes) to computer which will shut it down if it is not able to handle packets of that size.
www.esinps.com/user/Aviatorz
Aviatorz Tech. • •
•
•
•
•
Man-in-the-middle - These attacks can include the interception of email, files, passwords and other types of data that can be transferred across a network. This is a form of Data Theft attack. IP spoofing - A technique used to gain unauthorized access to computers, whereby the intruder gives off the appearance that the packets they are sending are coming from a trusted host. To engage in IP spoofing, an attacker must modify the packet headers so that it appears that the packets are coming from the trusted IP address. Virus - The most common computer infestation, viruses rely on other programs such as an email client to replicate themselves. There are many different brands of Anti-Virus software used to detect and eliminate viruses on computers. Virus definition files are what tell the anti-virus software what to look for and how to fix a particular virus if found. Because new viruses are being released all of the time, it is very important to keep the virus definition files up to date. Worms - Worms are stand alone programs that do need other programs in order to replicate themselves like a virus which relies on users to inadvertently spread it. Viruses and Worms can be prevented by installing anti-virus software which can be run on servers, clients, firewalls and other devices. Trojans - A Trojan is a type of file that appears to do one thing, but in reality does another. A Trojan can be a file that operates in an expected way, but also has a secret operation that subverts security. Once a Trojan is installed, it can perform a wide variety of destructive tasks and/or provide secure information to the attacker. Repudiation - While not necessarily an "attack", repudiation is when a party denies any detail about the execution of an online business agreement. This could be anything from denying that particular goods were ordered or received. Nonrepudiation defines ways of proving that a communication or transaction was sent or received by an individual or company and can involve technologies such as certificates.
Network Security Configurations: DMZ - A DMZ (demilitarized zone) is a computer host or small network inserted as a "neutral zone" between a company's private network and the outside public network. It prevents outside users from getting direct access to a server that has company data. Bastion host - A bastion host is a computer that is fully exposed to attack. The system is on the public side of the demilitarized zone (DMZ), unprotected by a firewall or filtering router. In fact, firewalls and routers can be considered bastion hosts. Other types of bastion hosts include web, mail, DNS, and FTP servers. Some network administrators will also use sacrificial lambs as bastion hosts. These systems are deliberately exposed to potential hackers to both delay and facilitate tracking of attempted break-ins. 3 Homed Firewall - In a three-homed firewall configuration, you install three network adapters in a computer that will act as a firewall. Each network card will route traffic to one of these three networks: Internal network, DMZ network and the Internet. This configuration provides better security than the bastion host configuration, and you have the added benefit of managing both the DMZ and the internal network from one location. However, one disadvantage of this configuration is that if hackers are able to penetrate your firewall, they will have access to both the DMZ and the internal network. Back-to-back firewalls - In this scenario, two computers are used as back-toback firewalls with a DMZ network in between them. This configuration is more
www.esinps.com/user/Aviatorz
Aviatorz Tech. secure than a 3 homed firewall setup. With this approach, a potential hacker would need to pass through two firewalls to gain access to your internal network.
www.esinps.com/user/Aviatorz
Aviatorz Tech. Smart Cards: The term smart card has been used to describe a class of credit card-sized devices with varying capabilities. It is the ICC (Integrated Circuit Card) that is of most interest to the personal computer because it is able to perform more sophisticated operations such as digital signature and key exchange. Newer operating systems are supporting smart card authentication. Privacy: Privacy entails keeping personal or corporate information from prying eyes, and keeping it confidential while in transit and in storage from end-to-end of a transaction lifecycle or information exchange. It should also be noted that privacy also constitutes the policy surrounding the use and disclosure of customer information to 3rd parties. The risk of not implementing enhanced privacy can sometimes be the most significant issue, certainly in terms of public perception resulting in loss of trust by your customers Basic HTML HTML stands for Hyper-text Markup Language and is used to create web pages. HTML tells a web browser how to display the text and graphics that will be on a web page by utilizing tags which are placed between angle brackets - <>. There are 3 required tags for an HTML document which are HTML, HEAD and BODY. Some of the tags are ‘containers’ and they take a starting as well as an closing tag. For example, is the starting tag and is the closing tag. Some important HTML tags are discussed below. • • • • • • • • •
- Starts a new HTML document. - Starts the HTML header. - Starts the HTML body.