Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct typos in routing #190

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,13 @@

## Project Hiatus

Due to the overwhelming support for translations, Linux Journey is in the middle of a site overhaul to make it more scalable for translations. Unfortunately, I am a full time professional and full time student so it has taken longer to do the migration than I had hoped. For now, any additional translations/edits/additions will not be added to the site. I'll try my best to finish adding everything that was already committed and will re-visit the project when I have more cycles. Thank you for understanding.
> Due to the overwhelming support for translations, Linux Journey is in the middle of a site overhaul to make it more scalable for translations. Unfortunately, I am a full time professional and full time student so it has taken longer to do the migration than I had hoped. For now, any additional translations/edits/additions will not be added to the site. I'll try my best to finish adding everything that was already committed and will re-visit the project when I have more cycles. Thank you for understanding.
>
> - [@cindyq](https://github.com/cindyq)

I've created this fork for maintenance of the project. You guys can make contributions to that, and, if [@cindyq](https://github.com/cindyq) ever back, we can just merge. Otherwise, we can keep continuing this awesome project

If you have any translation, any dead pull request here, any suggestion, etc. Just open an issue in a PR in the fork.

## Language Support

Expand Down
6 changes: 3 additions & 3 deletions lessons/locales/en_english/network-troubleshooting/icmp.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Lesson Content

The Internet Control Message Protocol (ICMP) is part of the TCP/IP protocol suite, it used to send updates and error messages and is an extremely useful protocol used for debugging network issues such as a failed packet delivery.
The Internet Control Message Protocol (ICMP) is part of the TCP/IP protocol suite, it is used to send updates and error messages and is an extremely useful protocol used for debugging network issues such as a failed packet delivery.

Each ICMP message contains a type, code and checksum field. The type field is the type of ICMP message, the code is a sub-type and describes more information about the message and the checksum is used to detect any issues with the integrity of the message.

Expand All @@ -15,7 +15,7 @@ Let's look at some common ICMP Types:
<li>Type 11 - Time Exceeded</li>
</ul>

When a packet can't get to a destination, Type 3 ICMP message is generated, within Type 3 there are 16 code values that will further describe why it can't get to the destination:
When a packet can't get to a destination, Type 3 ICMP message is generated, within Type 3 there are 16 code values that will further describe why it can't get to the destination:

<ul>
<li>Code 0 - Network Unreachable</li>
Expand All @@ -35,4 +35,4 @@ What is the ICMP type for echo request?

## Quiz Answer

8
8
26 changes: 13 additions & 13 deletions lessons/locales/en_english/network-troubleshooting/netstat.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@

We've discussed data transmission through ports on our machine, let's look at some well known ports.

You can get a list of well-known ports by looking at the file <b>/etc/services</b>:
You can get a list of well-known ports by looking at the file <b>/etc/services</b>:

<pre>
ftp 21/tcp
ssh 22/tcp
smtp 25/tcp
smtp 25/tcp
domain 53/tcp # DNS
http 80/tcp
https 443/tcp
Expand All @@ -22,23 +22,23 @@ The first column is the name of the service, then the port number and the transp

<b>netstat</b>

An extremely useful tool to get detailed information about your network is <b>netstat</b>. Netstat displays various network related information such network connections, routing tables, information about network interfaces and more, it's the swiss army knife of networking tools. We will focus mostly on one feature netstat has and that's the status of network connections. Before we look at an example, let's talk about sockets and ports first. A socket is an interface that allows programs to send and receive data while a port is used to identify which application should send or receive data. The socket address is the combination of the IP address and port. Every connection between a host and destination requires a unique socket. For example, HTTP is a service that runs on port 80, however we can have many HTTP connections and to maintain each connection a socket gets created per connection.
An extremely useful tool to get detailed information about your network is <b>netstat</b>. Netstat displays various network related information such as network connections, routing tables, information about network interfaces and more, it's the swiss army knife of networking tools. We will focus mostly on one feature netstat has and that's the status of network connections. Before we look at an example, let's talk about sockets and ports first. A socket is an interface that allows programs to send and receive data while a port is used to identify which application should send or receive data. The socket address is the combination of the IP address and port. Every connection between a host and destination requires a unique socket. For example, HTTP is a service that runs on port 80, however we can have many HTTP connections and to maintain each connection a socket gets created per connection.

<pre>
pete@icebox:~$ netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 icebox:domain *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 icebox.lan:44468 124.28.28.50:http TIME_WAIT
tcp 0 0 icebox.lan:34751 124.28.29.50:http TIME_WAIT
tcp 0 0 icebox.lan:34604 economy.canonical.:http TIME_WAIT
tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN
tcp6 1 0 ip6-localhost:35094 ip6-localhost:ipp CLOSE_WAIT
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 icebox:domain *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 icebox.lan:44468 124.28.28.50:http TIME_WAIT
tcp 0 0 icebox.lan:34751 124.28.29.50:http TIME_WAIT
tcp 0 0 icebox.lan:34604 economy.canonical.:http TIME_WAIT
tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN
tcp6 1 0 ip6-localhost:35094 ip6-localhost:ipp CLOSE_WAIT
tcp6 0 0 ip6-localhost:ipp ip6-localhost:35094 FIN_WAIT2
</pre>

The netstat -a command shows the listening and non-listening sockets for network connections, the -t flag shows only tcp connections.
The netstat -a command shows the listening and non-listening sockets for network connections, the -t flag shows only tcp connections.

The columns are as follows from left to right:

Expand Down Expand Up @@ -71,4 +71,4 @@ What port is used for HTTPS?

## Quiz Answer

443
443
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ listening on wlan0, link-type EN10MB (Ethernet), capture size 65535 bytes
11:28:31.190665 IP ThePickleParty.lan.51056 > 192.168.86.255.rfe: UDP, length 306
</pre>

You'll notice a lot of stuff happening when you run a packet capture, well that's to be expected there's a lot of network activity happening in the background. In my above example, I've taken only a snippet of my capture specifically the time when I decided to ping www.google.com.
You'll notice a lot of stuff happening when you run a packet capture, well that's to be expected there's a lot of network activity happening in the background. In my above example, I've taken only a snippet of my capture specifically the time when I decided to ping www.google.com.

<b>Understanding the output</b>

Expand All @@ -41,7 +41,7 @@ You'll notice a lot of stuff happening when you run a packet capture, well that'
<li>The first field is a timestamp of the network activity</li>
<li>IP, this contains the protocol information</li>
<li>Next, you'll see the source and destination address: icebox.lan > nuq04s29-in-f4.1e100.net</li>
<li>seq, this is the TCP packets's starting and ending sequence number</li>
<li>seq, this is the TCP packet's starting and ending sequence number</li>
<li>length, length in bytes</li>
</ul>

Expand Down
6 changes: 3 additions & 3 deletions lessons/locales/en_english/routing/what-is-a-router.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

## Lesson Content

We've used this term router before, hopefully you know what one is, since you probably have one in your home. A router enables machines on a network to communicate with each other as well as other networks. On a typical router, you will have LAN ports, that allow your machines to connect to the same local area network and you will also have an Internet uplink port that connects you to the Internet, sometimes you'll see this port being labelled as WAN, because it is essentially connecting you to a wider network. When we do any sort of networking activity, it has to go through the router. The router decides where our network packets go and which ones come in. It routes our packets between multiple networks to get from it's source host to it's destination host.
We've used this term router before, hopefully you know what one is, since you probably have one in your home. A router enables machines on a network to communicate with each other as well as other networks. On a typical router, you will have LAN ports, that allow your machines to connect to the same local area network and you will also have an Internet uplink port that connects you to the Internet, sometimes you'll see this port being labelled as WAN, because it is essentially connecting you to a wider network. When we do any sort of networking activity, it has to go through the router. The router decides where our network packets go and which ones come in. It routes our packets between multiple networks to get from it's source host to it's destination host.

<b>How does a router work?</b>

Think about routing the same way as mail delivery, we have an address we want to send a letter to, when we send it off to the post office, they get the letter and see, oh this is going to California, I'll put it on the truck going to California (I honestly have no idea how the postal system works). The letter then gets sent to San Francisco, inside San Francisco there are different zip codes, and then in those zip codes there are smaller address codes, until finally someone is able to deliver your letter to the address you wanted. On the other hand, if you already lived in San Francisco and in the same zipcode, the mail deliverer will probably know exactly where the letter has to go to without handing it off to anyone else.
Think about routing the same way as mail delivery, we have an address we want to send a letter to, when we send it off to the post office, they get the letter and see, oh this is going to California, I'll put it on the truck going to California (I honestly have no idea how the postal system works). The letter then gets sent to San Francisco, inside San Francisco there are different zip codes, and then in those zip codes there are smaller address codes, until finally someone is able to deliver your letter to the address you wanted. On the other hand, if you already lived in San Francisco and in the same zipcode, the mail deliverer will probably know exactly where the letter has to go to without handing it off to anyone else.

When we route packets, they use similar address "routes", such as to get to network A, send these packets to network B. When we don't have a route set for that, we have a default route that our packets will use. These routes are set on a routing table that our system uses to navigate us across networks.

Expand All @@ -17,7 +17,7 @@ As packets move across networks, they travel in hops, a hop is how we roughly me
<b>Understanding the basic difference between Switching, Routing & Flooding?</b>
Packet SWITCHING is basically receiving, processing and forwarding data to the destination device.
ROUTING is a process of creating the routing table, so that we can do SWITCHING better.
Before routing, FLOODING was used. If a router don't know which way to send a packet than every incoming packet is sent through every outgoing link except the one it arrived on.
Before routing, FLOODING was used. If a router doesn't know which way to send a packet then every incoming packet is sent through every outgoing link except the one it arrived on.

## Exercise

Expand Down