 Hi there. My name is Ken Mayer. I'm going to be your instructor for this course. Now I've been involved in this world of IT since the very early 80s and you know back then it was a whole different world. Obviously we had the use of mainframes. We were using tape drives. You know I first started trying to do any programming. I was punching cards and feeding him into machine to be able to get an answer of like six or five or whatever the answer was. And I've seen a lot of things change over time. I've worked with a lot of different operating systems. A lot of different network operating systems worked in the infrastructure as well. The routing, switching, and security realms. I was around to watch this transition of Novell becoming big and popular and then suddenly here comes this Windows NT thing in the mid 90s 1996 and just taking over the network world by by force. I mean no not force but just going crazy and with all these features and things and I got right on that bandwagon. I've been following along with Windows ever since then. Through the use of Windows 2000 into the 2003 server here to 2008 supporting all of the different workstation operating systems and being able to continue to see the great features and the changes in the development. Of course like I said through that same period of time I had the opportunity to also work on the infrastructure side. That is working with the Cisco's and the Junipers and the routing and the switching the security platforms and I do a lot of work in the security hacking realm as well. Now I guess you might say well that sounds like a lot of different things but you got to remember I'm talking over 30 years of being able to be in this business. So I've had the chance to explore a different avenue or two and I hope to be able to bring all of that experience to you as we go through this course and we talk about the Windows 2008 server. In this chapter we're going to start with a foundation of the actual network communications and that is to understand the underlying way in which we get the communications to happen from server to server over our IP based networks. We're going to begin with the discussion of the open systems interconnect model. It's the OSI model. We're going to see how that applies as an open standard to the IP model that we see what we call the TCP IP suite and then we'll talk mostly about the IP version 4. That's what we're currently working with on most of our networks. We're going to talk about the way in which you can distinguish the network portion of that address versus the host portion. We're also going to look at ways in which we can increase how many actual networks we get out of each and every address through the use of subnetting. Then we're going to talk about IP version 6. Now IP version 6 is the replacement. It is the future. It's here today. We'll make some some contrasts as far as how is it different than IP 4 and why did we need it? And then of course we're going to look at how you actually configure the IP 4 addresses inside of the Windows operating systems whether on the workstation or on the server. Let's start off with the discussion of the OSI model. Now that stands for the open systems interconnect and we're going to look at as a variety of layers what we call the layers of the OSI. There are seven of them and we'll make sure that you understand how they are set up what they mean for us. We'll look at the process of taking the actual raw information we want to exchange from one end station to another end station through the encapsulation process and then once it's received the de-encapsulation process and then we'll take a look at how the OSI model maps with that current structure that we utilize called the TCP IP model. When we talk about the network layers it's important that you have the big picture to understand the conceptual steps that go on through the network communications. And if you think about it the ultimate goal is to take some bit of data that we want to be able to send from one system to another and in that process we're going to start adding information to be able to help us in the transmission of that information from one host to the next. So what goes on then is that we basically go through these layers of constructing and then of course once I receive that packet deconstructing that information so that I can utilize the data. We often call that process the encapsulation process as we are getting ready to send that information and once we receive it we will then de-encapsulate the information. Now that means that the layers do the work in both directions. They add information on encapsulation. They take information off de-encapsulation but more than that they also provide information that helps them to be able to progress to the next layer. Often we call that a PDU, the protocol data units, the information that's being transmitted from one to the other. Now the goal is to say that because of the way the layers do work in some autonomy that I could replace one of those layers without having to worry about how it works with the layer above or below. And that's kind of the goal that we try to have to make it easy to be able to transition to new technologies. As an example there for a while this network company called Novell was utilizing a layer three logical address called IPX. The rest of the world was using IP. Yet both companies could still use a transport protocol of TCP. Both companies could still work with Ethernet because they constructed that layer three of the IP address or the IPX address depending on which one it was to be able to interoperate with the layers above and below it. Now we're seeing it again. As we're going from an IP version four address space now to an IP version six address space we're seeing again the same ability to be able to just replace that little bit of that layer put something new in there and it's still able to communicate from the top to the bottom. Now when we talk about those layers you're going to see all sorts of information but the idea of when people say well why do I need all these layers? Well you know if you think about it just if I think about the lower layers as I got that little bit of data and I want to start sending it we utilize a language that both hosts can speak so they know how to reconstruct the information that's that TCP stuff. We have to have a logical address available so that the routing layer knows how to deliver this thing to a destination that's at least close to where the host is located. Then in the actual local area network we have switches that are utilizing some sort of media address typically Ethernet's Mac address so we have that information added into it and then at some point we have to convert all of that data into a bunch of ones and zeros so it can be transmitted across that copper wire fiber connection radio frequency or whatever we're doing at the media layer and so that's what the purpose of the encapsulation process is to be able to help us at all aspects of that transmission and you'll see that as we talk about the OSI layers in a little bit more detail that's what we're trying to do but conceptually it's just important that you understand how the layers are a bit autonomous and designed to work with the layers above and below in the process of being able to encapsulate and decapsulate the information that is being transmitted between two hosts. Now there are other transport layers out there in the days of old when Novell was very popular it had its own proprietary transport protocol called SPX. Now it operated in much the same way as as the transport layer but they had their own method of communication that worked very well and I'm not saying whether it was greater or not great one of the things that was important to remember it was proprietary and so history has shown us that many proprietary protocols died of boredom because nobody used them they didn't want to pay the royalty fees so SPX and at the network layer IPX were some other examples of the transport layer but another one that you'll come across here in Windows is the UDP the user data gram protocol. Now UDP's job is to be what they call connectionless and that doesn't sound really good because to me if you tell me it's connectionless I'm thinking eh why do I want to use it let's instead call it an unacknowledged protocol unacknowledged simply means that I'm sending this packet out and there'll be no way for me to know whether or not you received it because you will not acknowledge to me that it was that it made its way. Now you might ask well well good is this protocol the good in the protocol is that it has a lot lower overhead because it doesn't have all of the session control stuff that TCP has and it's great for being able to do things like broadcast traffic or multicast traffic where I want to send just one stream out and either you get it or you don't and so those are some of the benefits of benefits of UDP. Now it still is going to operate in segments in that it's going to send a piece of traffic to you with each of the of the packets that you receive you're going to have a series of data. If they come to you out of order then things are going to be mixed up because you won't know which order they're supposed to be in it's basically going to come to you in the order received. So let me talk about a popular use for UDP that we see growing in our networks and that's for the voiceover IP. Now the voiceover IP uses user datagram protocol but it also has an extra part of that encapsulation called RTP the real-time protocol whose job is to help make sure that you get everything in certain time segments so if a packet comes out of order you know that it's out of order by its timestamp you drop it because we are just interested in sending to you the voice traffic in the order in which it was sent. So again lots of examples they're just languages. Now how do I know how to get from where I am to where you are and we do that at the network layer. The network layer layer three is designed to help create what we call broadcast domains. The idea of a broadcast domain is to say that I don't want the entire world to all be in one network where if one person sends a broadcast 10 billion others computers get that broadcast. Instead we consolidate that network into small segments where broadcast traffic can't penetrate outside of its little area but because it is a logical addressing scheme we need to know how do I identify my broadcast domain versus your broadcast domain and get my traffic to you and we do that through an address scheme called the IP the internet protocol. Now with the IP settings the IP version 4 we're going to learn that there's a network portion and that there's a host portion and the network portion describes the address of your broadcast domain. A lot of work has been done to make sure that nobody has the same broadcast domain in the public realm so there's a lot of things that we want to actually go into and explore when we talk about IP but we use devices like routers to be able to help us make decisions about where and what is the best path to get to that particular network ID. Now once we get to your network and we call those by the way we call them packets once we get that packet to you through whichever router is closest to you then it enters into what we like to call the physical aspects of the of the network but before we get there it's actually called the local area network we call that layer 2 the data link layer. Now the data link layer is just an encapsulation protocol that is designed for the communications in that local area and I know that sounds like I'm speaking in circles but think of it this way between routers there is a link of some kind whether it's going to be a fiber cable a copper cable radio frequency microwave satellite communications there's a link and that particular link the equipment in between the two routers has its own method of communicating in some cases it might use ATM it might use frame relay it could use some mold x25 it could be using you know a number of things like ppp and and we can continue to go on and talk about all of these encapsulation protocols but what's important is is that we take this packet and encapsulate it with the information at layer 2 data link to make it through these devices well since I've just described this packet getting to the router closest to you and now it's in your local area network the odds are that you're in an ethernet based network and ethernet is another layer 2 protocol and so the data link layer contains information that your switches or your bridges can use to help finalize the delivery of this packet but at layer 2 they'd like to call them frames and finally of course there is the actual turning all of this information into a bunch of ones and zeros so that it can be transmitted on all of those physical mediums that I just talked about and when I say physical of course again that's copper fiber radio frequency the microwave stuff infrared the communications through satellites which may still be radio frequency of some sort but there's a lot of aspects of the physical side of this and that's another part of the communication we call layer 1 all right so a lot of things that I've just thrown out at you with the OSI model remember that as I start from the application layer where I first had the data and I was going to break it into pieces the very first place the transport layer where I created the segment I'm going to encapsulate in other words take your data and add to the front of it the information for the receiving host on how to put this data back together I'm going to add on top of that the IP address of where I want my router to send it on top of that will be added the data link encapsulation to get it out of my local area network to my router and from that router to every other hop in between until it arrives at its destination so interestingly enough the data link portion of this transmission is constantly changing as it goes from your local area network to your service providers wide area network to the other service providers wide area network to the local area network of the receiving host and it will constantly change because it needs to get through those individual networks and all of that is going to be done on a lot of different physical medias it across from copper copper wire to to the fibers and all the way through so that's the entire idea of what we're doing with the OSI model and hopefully I've made sense about each of these different pieces as we talk about them a little bit later later and again we're going to focus on talking about IP in this chapter so we have an understanding of what we need to configure for our windows servers and our clients to be able to make them communicate with the network and of course with the data link layers so as I talked about the OSI model what I described was what we called the encapsulation process encapsulation was just simply taking the original piece of data and at every layer in the OSI model adding some more information to it to help facilitate the communications now as I talked about going from the data layer we added on this transport layer stuff we imagine if in my example we're using TCP we would add things like a sequence number port numbers to know which application I want to talk to on the other side that information would help us in being able to get the receiving host to know which application is going to deal with the data sequence number which order the data which should be reconstructed and there's other things that are in the that headers that also help us with communications things like what they call the the windowing or the the sliding windows for flow control and many other pieces that this course really isn't going to get into but it's important information to know that it that it needs to be put into this process of encapsulation and as I went through the layer three we put the IP address on we had to put the source where we are coming from the destination IP address then this is whole issue of doing natting which we'll talk about later on when we try to describe the process of going from private addresses to public then at layer two we're going to put in the encapsulation protocol that makes sense for the local area network that we're in at that the point of transmission and at that we also create what's called the frame check sequence which is nothing more than a mathematical computation that allows every device down the downstream to know whether or not the actual packet has been destroyed by any other type of interference and then we push it out on the physical layer which is where we've turned it into a bunch of ones and zeros and we transmit it across some physical link so let's say we talk about sending the file from our server to whoever's requested it in my local ethernet network I would have to at layer two add on an ethernet encapsulation that included what we call the MAC addresses the media access controls of all of the different devices I need to cross through to get to the point where my router can then send it across this internet link well that information will be stripped off that layer two is stripped off by the router a new layer two would be put on to match whatever its wide area network is going to be whether again frame relay point to point ATM whatever that case may be and sending it on its way across the internet and so that layer two keeps changing as I said literally from hop to hop now the receiving side is going to do the reverse process called de-encapsulation de-encapsulation means that the the receiving host is going to be looking at these ones and zeros that come across its network card and it's going to read the what they call basically the the headers of this ones and zeros are going to put it together and it's going to say okay I recognize this is ethernet I recognize my MAC address so it tears its MAC address off it looks at the IP portion it says yep that's definitely my IP portion it remembers the source so it knows who to reply to and strips that IP address off it sees the TCP information it says oh great this is uh sequence number one so this is the first of my of my segments and I want to know that I want to attach that sequence number two and three and four and reassemble my data just as it is and because it says it's port whatever I know which application was calling for this information strips that information off and then there's the data segment where I can deal with the presentation the application can use that information once it's all assembled so as I said that's the process of encapsulation from the sender to the de-encapsulation of the receiver and of course this process can go back and forth as we exchange information most often when it comes to file transfers we're going to see more packets from the sender than we're going to see from the receiver the receiver needs only to send an acknowledgement to let us know that you got those packets now because of this process of encapsulation de-encapsulation being done at every layer as I said earlier you can change something about a layer in how it does its work as long as the layer above it and below it can see the same information that they need to do their job then this works so as an example at the layer three the network layer when we go from an ip4 address to an ip6 address as long as the transport layer above it and the network layer below it can deal with that traffic then things should be able to work very well for us it makes the scalability and the ability to change things very easy and it was designed to help give us an open protocol so that there's no proprietary issues here and again like I said Novell did have its own ipx spx that worked at these layers just as I described but they did create their own protocols and of course if you try to use that now you'll see that everybody's generally agreed on let's use ip4 and move to ip6 all right so I've talked about tcpip and tcpip actually has its own layer design they have four layers instead of seven but they map pretty nicely with the osi model now the tcpip model did predate the osi model the tcpip model is nearly as old as I am and I'm not going to tell you how old that is but it's been around the osi layer was developed by the international standards organization the ISO in in the time in which they were also working on creating a replacement for the ip and tcpip protocols so that's why the model doesn't really mimic the tcpip model because they had their own I think it was called clns protocol and it's still out there by the way it's still in use with some of its routing aspects but anyway they do map closely to each other in the tcpip model they take the upper layers layer seven six and five and they just call it the application layer now tcp has some of the applications we talked about HTTP, FTP and those capabilities it deals with its own session control it has all of the same capabilities as we saw in layers seven six and five it has a transport layer for tcp for udp also know that at the tcpip model there are other transport layer options and they exist in the osi model too and most often those are routing protocols so if i'm doing ospf or isis we have some different types of communications that can occur at layer four but remember transport layer just meant it's a common language we're willing to speak they have a layer three for the ip addresses but theirs is called the internet layer as opposed to the network layer but functionally for us it's when dealing with ip we're talking about the same capabilities and of course there are other tools that live at these layers messaging protocols and and tools that we use for determining whether or not connections are valid and then in tcpip they have one last layer that is the same as the layers two and layer one for the osi model they call that the data link layer and there we would see the different types of frame types for ethernet we would see the physical information about how to send this or have basically had a serialized information over copper over fiber and the rest of it so the tcpip model as i said predated and so it was kind of an idea of of a framework to start with as we moved into the use of of tcpip and a larger scale than it ever had been before and that is to move it into the osi model now like i said the osi model was genuinely designed way back then as a way of creating a structure so that we could migrate from tcpip into other protocols the thought process was is that tcpip was great for the military great for the universities and and their old you know precursor to the internet but the thought of whether or not it would scale out well if we wanted to keep that or use something else during that transition time we came up with the osi model we are obviously still using ip and tcp and we're going to continue to use that in some form as we in the foreseeable future but i really want you to focus on the osi model so you understand how all of the different pieces interact