SlideShare a Scribd company logo
1 of 65
Download to read offline
Andriy Berestovskyy
2017
( ц ) А н д р
і й Б е р е с
т о в с ь к и
й
networking hour
TCP
UDP
NAT
IPsec
IPv4
IPv6
internet
protocolsAH
ESP
authentication
authorization
accounting
encapsulation
security
BGP
OSPF
ICMP
ACLSNAT
tunnel
PPPoE
GRE
ARP
discovery
NDP
OSI
broadcast
multicast
IGMP
PIM
MAC
DHCP
DNS
fragmentation
semihalf
berestovskyy
Why my network does not work?
Networking Quiz 2017
LAB
Quiz 1. Network Device Test
2
Lab Switch
Packet
Generator
DUT
LAN
Direct Link
How?
LAB
Network Device Test: Quiz!
3
Lab Switch
LAN
Direct Link
# ifconfig eth0 10.0.0.2/24
# ping 10.0.0.1
# ifconfig eth1 10.0.0.1/24
# ping 10.0.0.2
What’s
wrong?
LAB
Network Device Test: Symptoms
4
Lab Switch
LAN
Direct Link
# ifconfig eth0 10.0.0.2/24
# ping 10.0.0.1
# ifconfig eth1 10.0.0.1/24
# ping 10.0.0.2
What’s
wrong?
ssh: connection
timeout
LAB: 10.2/16
Network Device Test: Analysis
5
Lab Switch
LAN: 10.0/16
Direct Link: 10.0.0/24
# ifconfig eth0 10.0.0.2/24
# ping 10.0.0.1
# ifconfig eth1 10.0.0.1/24
# ping 10.0.0.2
T
G
I am
10.0.0.1!
I am
10.0.0.1!
Root cause — overlapping IP networks
6
Recap: IPv4 Private Address Space
7
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
Meaning?
Recap: IPv4 Subnet Mask
8
32-bit Number
0110 0100 0000 0011 0000 0010 0000 0101
100. 3. 2. 5 IPv4 Address in Dotted Decimal Notation
1111 1111 1111 1111 1111 1111 0000 0000
255. 255. 255. 0 Subnet Mask in Dotted Decimal Notation
&
0110 0100 0000 0011 0000 0010 0000 0000
100. 3. 2. 0 Subnet in Dotted Decimal Notation
Recap: IPv4 Subnet Mask Length
9
Subnet Mask Length = 24
1111 1111 1111 1111 1111 1111 0000 0000
255. 255. 255. 0 Subnet Mask in Dotted Decimal Notation
Dotted Decimal Notation:
IPv4 Address: 100.3.2.5
Subnet Mask: 255.255.255.0
CIDR* Notation:
IPv4 Prefix: 100.3.2.5/24
==
* Classless Inter-Domain Routing
Recap: IPv4 Private Address Space
10
10.0.0.0/8 = 10.0.0.0/24
10.0.1.0/24
[...]
10.255.255.0/24
172.16.0.0/12 = 172.16.0.0/24
172.16.1.0/24
[...]
172.31.255.0/24
192.168.0.0/16 = 192.168.0.0/24
192.168.1.0/24
[...]
192.168.255.0/24
224-8
= 216
= 65536 networks
224-12
= 212
= 4096 networks
224-16
= 28
= 256 networks
Network Device Test: Solutions
1. Immediate solution: disconnect direct link
2. Use 172.16.0.0/12 for network tests
11
172.16.0.0/12 = 172.16.0.0/24
172.16.1.0/24
[...]
172.31.255.0/24
Direct Link
LAB
Quiz 2. Network System Test
12
Lab Switch
Packet
Generator
DUT
LAN
Direct Link
DUT
How?
Packet
Generator
IP Subnetting (Example)
1. Numerate hosts: 1, 2, 3, 4
2. Numerate subnets: <prefix>.12 (connects host 1 and 2), ...
13
Host 1 Host 2 Host 3 Host 4
172.16.12 172.16.23 172.16.34
Host 1 Host 2 Host 3 Host 4
LAB
Network System Test: Quiz!
14
LAN
What’s
wrong?*
172.16.12 172.16.23 172.16.34
# ifconfig eth1 172.16.12.1
… eth1
172.16.12.2
… eth0 172.16.23.2 # ifconfig eth1 172.16.34.4
Host 1 Host 2 Host 3 Host 4
… eth0 172.16.23.3
… eth1
172.16.34.3
eth1 to eth1
LAB
Network System Test: Symptoms
15
LAN
What’s
wrong?*
172.16.12 172.16.23 172.16.34
# ifconfig eth1 172.16.12.1
… eth1
172.16.12.2
… eth0 172.16.23.2 # ifconfig eth1 172.16.34.4
Host 1 Host 2 Host 3 Host 4
… eth0 172.16.23.3
… eth1
172.16.34.3
ping 172.16.34.4
Host Unreachable
Network System Test: Cause 1
Default netmask:
ifconfig eth0 172.16.23.2 == ifconfig eth0 172.16.23.2/16
ifconfig eth1 172.16.12.2 == ifconfig eth1 172.16.12.2/16
eth0 subnet 172.16/16 == eth1 subnet 172.16/16
16
Why?
Classful IP Networks (Legacy)
17
Why?
A
Class Networks
27
0xxx xxxx
Leading Bits
C 221
110x xxxx
D —1110 xxxx
Hosts Start
232-8
232-24
—
0.0.0.0
192.0.0.0
224.0.0.0
B 214
10xx xxxx 232-16
128.0.0.0
Implicit
Masklen
/8
/24
—
/16
E —1111 xxxx — 240.0.0.0—
Source: https://en.wikipedia.org/wiki/Classful_network
End
127.255.255.255
223.255.255.255
239.255.255.255
191.255.255.255
255.255.255.255
LAB
System Test: Cause 1 Analysis
18
LAN
172.16.12 172.16.23 172.16.34
# ifconfig eth1 172.16.12.1
… eth1
172.16.12.2
… eth0 172.16.23.2 # ifconfig eth1 172.16.34.4
Host 1 Host 2 Host 3 Host 4
… eth0 172.16.23.3
… eth1
172.16.34.3
Who has
172.16.34.4?
Solutions?
Not
me!
System Test: Cause 1 Solution
Fix the subnet mask:
# ifconfig eth0 172.16.23.2/24
# ifconfig eth1 172.16.12.2/24
eth0 subnet 172.16.23/24 != eth1 subnet 172.16.12/24
19
LAB
Network System Test: Symptoms
20
LAN
What’s
wrong?*
172.16.12/24 172.16.23/24 172.16.34/24
# ifconfig eth1
172.16.12.1/24
… eth1
172.16.12.2/24
… eth0
172.16.23.2/24
# ifconfig eth1
172.16.34.4/24
Host 1 Host 2 Host 3 Host 4
… eth0
172.16.23.3/24
… eth1
172.16.34.3/24
ping 172.16.34.4
Packet Filtered
Network System Test: Cause 2
Host 1 Routing Table:
dhclient eth0 => 10.2/16 dev eth0
=> default via 10.2.0.254
ifconfig eth1 172.16.12.1/24 => 172.16.12/24 dev eth1
How to reach 172.16.23/24?
How to reach 172.16.34/24?
21
How?
LAB
System Test: Cause 2 Analysis
22
LAN Solutions?
172.16.12/24 172.16.23/24 172.16.34/24
# ifconfig eth1
172.16.12.1/24
… eth1
172.16.12.2/24
… eth0
172.16.23.2/24
# ifconfig eth1
172.16.34.4/24
Host 1 Host 2 Host 3 Host 4
… eth0
172.16.23.3/24
… eth1
172.16.34.3/24
Default
route
Filter the
packet!
System Test: Cause 2 Solution
Fix Host 1 Routing Table (Add Static Routing):
ifconfig eth1 172.16.12.1/24 => 172.16.12/24 dev eth1
ip route add 172.16.23/24 via 172.16.12.2 => 172.16.23/24 via 172.16.12.2
ip route add 172.16.34/24 via 172.16.12.2 => 172.16.34/24 via 172.16.12.2
23
172.16.12/24 172.16.23/24 172.16.34/24
172.16.23/24 via 172.16.12.2
172.16.34/24 via 172.16.12.2
… eth1
172.16.12.2/24
# ifconfig eth1
172.16.34.4/24
Host 1 Host 2 Host 3 Host 4
LAB
Network System Test: Symptoms
24
LAN
What’s
wrong?*
172.16.12/24 172.16.23/24 172.16.34/24
ifconfig + ip route
… eth1
172.16.12.2/24
# ifconfig eth1
172.16.34.4/24
Host 1 Host 2 Host 3 Host 4ping 172.16.34.4
Network Unreachable
… eth0
172.16.23.2/24
Network System Test: Cause 3
Host 2 Routing Table:
ifconfig eth0 127.16.23.2/24 => 172.16.23/16 dev eth0
ifconfig eth1 172.16.12.2/24 => 172.16.12/24 dev eth1
How to reach 10.2/16?
How to reach 172.16.34/24?
25
How?
LAB
System Test: Cause 3 Analysis
26
LAN
172.16.12/24 172.16.23/24 172.16.34/24
# ifconfig eth1
172.16.12.1/24
… eth1
172.16.12.2/24
… eth0
172.16.23.2/24
# ifconfig eth1
172.16.34.4/24
Host 1 Host 2 Host 3 Host 4
… eth0
172.16.23.3/24
… eth1
172.16.34.3/24
No route to
172.16.34/24
ping 172.16.34.4
Solutions?
System Test: Cause 3 Solution
Fix All Routing Tables!
27
172.16.12/24 172.16.23/24 172.16.34/24
172.16.23/24 via 172.16.12.2
172.16.34/24 via 172.16.12.2
Host 1 Host 2 Host 3 Host 4
172.16.12/24 via 172.16.34.3
172.16.23/24 via 172.16.34.3
172.16.12/24 via 172.16.23.2
default via 172.16.34.4
172.16.34/24 via 172.16.23.3
default via 172.16.12.1
4
1
1
4
Think both
directions!
Quiz 3. Local MAC Address
Why local MAC?
● Virtual Machine
● TUN/TAP
● NIC Virtual Function
28
More?
Local MAC Address: How?
29
1. ifconfig DEV hw ether MAC
2. ip link set dev DEV address MAC
3. /etc/network/interfaces (Ubuntu):
auto DEV
iface DEV inet dhcp
hwaddress ether MAC More?
Local MAC Address: Quiz!
30
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# ping 172.16.0.2 # OK!
# dpdkgen 172.16.0.2@01:02:03:04:05:06
# ifconfig eth1 hw ether 01:02:03:04:05:06
# ifconfig eth1 172.16.0.2/24
What’s
wrong?
Ping is OK!
Local MAC Address: Symptoms
31
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# dpdkgen 172.16.0.2@01:02:03:04:05:06
# ifconfig eth1 hw ether 01:02:03:04:05:06
# ifconfig eth1 172.16.0.2/24
What’s
wrong?LAN
@#*&!!
^*%$+!1!
1. Receive frame, check Ethernet FCS
2. Add/update source MAC in MAC table
3. If multicast bit is set:
a. forward to all ports, but the source
4. If destination is in MAC table:
a. forward to the specific port
5. Else, forward to all ports
Recap: Per-VLAN Switch Logic
32
Any issues?
Recap: Ethernet MAC Address
33* OUI — Organizationally Unique Identifier
NIC IDOUI*2
24 bits 24 bits
b7
0: globally unique
1: locally managed
b6
0: unicast
1: multicast
b5 b4 b3 b2 b1 b0
MAC, 6 octets
First octets
Local MAC Address: Root Cause
34
0 0
1: multicast
0201
0 0 0 0 0 1
Local MAC03 04 05 06
First octets
Local MAC Address: Analysis
35
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# dpdkgen 172.16.0.2@01:02:03:04:05:06
# ifconfig eth1 hw ether 01:02:03:04:05:06
# ifconfig eth1 172.16.0.2/24
LAN
M
G
M
GForwards to
all ports
Solutions?
M
G
Local MAC Address: Solutions
1. Immediate solution: disconnect traffic generator
2. Use local MAC starting with 02:
02:03:04:05:06:07
3. Connect DUT directly to packet generator
4. Use VLANs:
switch(config)# interface gigabitethernet 0/5 - 7
switch(config-if)# switchport access vlan VLAN
36
More?
Source: CCNP SWITCH, page 97
Local MAC Address: Admin Solution
37
Lab
Switch
Packet
Generator
DUT
LAN
M
G
lab-switch# configure terminal
lab-switch(config)# interface gigabitethernet 0/5
lab-switch(config-if)# description --- Packet Generator
lab-switch(config-if)# storm-control multicast level 1
Storm
control
Source: CCNP SWITCH, page 421
Storm
control
Quiz 4. Packet Generator
38
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# dpdkgen 172.16.0.2@02:03:04:05:06:07
# ifconfig eth1 hw ether 02:03:04:05:06:07
# ifconfig eth1 172.16.0.2/24
What’s
wrong?
Packet Generator: Symptoms
39
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# dpdkgen 172.16.0.2@02:03:04:05:06:07
# ifconfig eth1 hw ether 02:03:04:05:06:07
# ifconfig eth1 172.16.0.2/24
What’s
wrong?LAN
@#*&!!
^*%$+!1!
Recap: Per-VLAN Switch Logic
40
Host A
Host B
Host C
Host D
D
A
PortMAC
1
2
3
4
MAC Table
Learn!
1A
Recap: Switch Logic
41
Host A
Host B
Host C
Host D
D
A
1
PortMAC
1
2
3
4
MAC Table
2
1. Check Ethernet FCS
2. Add A to MAC table
3. No D in MAC table:
○ what to do?
1A
Recap: Switch Logic
42
Host A
Host B
Host C
Host D
D
A
1
PortMAC
1
2
3
4
MAC Table
2
D
A
D
A
3
3
“Unknown unicast”
D
A
3
1. Check Ethernet FCS
2. Add A to MAC table
3. No D in MAC table:
○ send to all ports
Problems?
1A
Recap: Switch Logic
43
Host A
Host B
Host C
Host D
4
Port
D
MAC
1
2
3
4
MAC Table
2
A
D
1
1. Check Ethernet FCS
2. Add D to MAC table
3. A in MAC table:
○ send to port 1
A
D
3
Never
happens :(
1. Receive frame, check Ethernet FCS
2. Add/update source MAC in MAC table
3. If multicast bit is set:
a. forward to all ports, but the source
4. If destination is in MAC table:
a. forward to the specific port
5. Else, forward to all ports
Recap: Per-VLAN Switch Logic
44
Root cause — unicast flood
due to unidirectional traffic
(packet generator —> device under test)
45
Unicast
flood?
Unicast flood — unintentional behavior of a switch
treating a unicast packet as a broadcast packet.
— Wikipedia
46
Traffic Generator: Analysis
47
Lab
Switch
Packet
Generator
DUT
# ifconfig eth0 172.16.0.1/24
# dpdkgen 172.16.0.2@02:03:04:05:06:07
# ifconfig eth1 hw ether 02:03:04:05:06:07
# ifconfig eth1 172.16.0.2/24
LAN
D
G
D
GForwards to
all ports
Solutions?
D
G
Packet Generator: Solutions
1. Immediate solution: disconnect traffic generator
2. Connect DUT directly to packet generator
3. Use VLANs:
switch(config)# interface gigabitethernet 0/5 - 7
switch(config-if)# switchport access vlan VLAN
4. Add static MAC entries:
switch(config)# mac address-table static MAC vlan VLAN interface gigabitethernet 0/5
ubuntu# bridge fdb add LLADDR dev DEV
48
More?
Source: CCNP SWITCH, pages 97, 40
Packet Generator: Admin Solution
49
Lab
Switch
Packet
Generator
DUT
LAN
D
G
lab-switch# configure terminal
lab-switch(config)# interface gigabitethernet 0/5
lab-switch(config-if)# description --- Packet Generator
lab-switch(config-if)# storm-control unicast level 1
Source: CCNP SWITCH, page 421
Storm
control
Storm
control
Why set speed on a port?
— Make sure it is the fastest possible option!
1000Mbit/s, Full Duplex
Quiz 5. Autonegotiation
50
More?
ubuntu# ethtool -s eth0 autoneg off speed 1000
arista(config-if-Et1)# speed forced 1000full
cisco(config-if)# speed 1000
Autonegotiation: How?
51
Autonegotiation: Quiz!
52
# ethtool -s eth0 autoneg off speed 1000
What’s
wrong?
Host
LAN
Autonegotiation: Symptoms
53
# ethtool -s eth0 autoneg off speed 1000
What’s
wrong?
Host
LAN
Slo-o-o-o-ow!!!
What’s
autonegotiation?
Autonegotiation — when two devices choose
common speed, duplex, and flow control
Note: if autonegotiation is disabled, the device that is capable of autonegotiation can
determine speed, but cannot determine duplex, so half duplex is always assumed
— Wikipedia
54Source: https://en.wikipedia.org/wiki/Autonegotiation
Root cause — duplex mismatch, i.e. two devices
operate in different duplex modes
— Wikipedia
55
Autonegotiation: Analysis
56
# ethtool -s eth0 autoneg off speed 1000
Host
LAN
Autonegotiation
is off
Autonegotiation
is on
Solutions?Implicit
full duplex
Fallbacks to half
duplex
Autonegotiation: Solutions
Enable autonegotiation!
Rule: both auto OR both manual
57
— So, why slow?
58
Collision Domain
Recap: Collision Domain
59
Host A
Host B
Host C
Host D
Repeater Hub
A
B
A
C
1
1
A
C
A
B
2
A
C
A
B
2
Solutions?
Recap: CSMA/CD
Carrier-Sense Multiple Access with Collision Detection
media access control method:
1. IF medium is not idle THEN goto 1
2. Start transmission + monitor for a collision
3. IF collision occurred THEN wait, goto 1
60
:(
Networking Debug Tools: tcpdump
Usage:
# tcpdump -envvi eth0
-e print ethernet header
-n numeric format
-v verbose
-v even more verbose (checksums)
or use WireShark
61
Networking Debug Tools: netstat
Usage:
# watch -n 1 “netstat -s | grep -vw 0”
-n update interval
-s display statistics
-v invert match
-w match whole words
62
Networking Debug Tools: counters
1. NIC counters:
# ip -s -s link
-s output more statistics
2. Switch counters:
switch> show interface ethernet 1
switch> show interface ethernet 1 status
63
Networking Quiz Checklist
1. Overlapping IP networks?
2. Rarely used private prefix?
3. Default netmask?
4. ifconfig vs routing?
5. Static routing?
6. Multicast MAC?
7. Unknown unicast?
8. Duplex mismatch?
9. Debug tools?
64
References
1. Kevin Wallace. CCNP Routing and Switching ROUTE 300-101 Official Cert Guide. Cisco Press, 2014
2. David Hucaby. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014
3. https://en.wikipedia.org/wiki/Autonegotiation
4. https://en.wikipedia.org/wiki/Duplex_mismatch
65

More Related Content

What's hot

Berkeley Packet Filters
Berkeley Packet FiltersBerkeley Packet Filters
Berkeley Packet FiltersKernel TLV
 
BPF: Next Generation of Programmable Datapath
BPF: Next Generation of Programmable DatapathBPF: Next Generation of Programmable Datapath
BPF: Next Generation of Programmable DatapathThomas Graf
 
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...Maximilan Wilhelm
 
LF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OVS_17_OVS-DPDK Installation and GotchasLF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OVS_17_OVS-DPDK Installation and GotchasLF_OpenvSwitch
 
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackL2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackMaximilan Wilhelm
 
Dynamische Routingprotokolle Aufzucht und Pflege - OSPF
Dynamische Routingprotokolle Aufzucht und Pflege - OSPFDynamische Routingprotokolle Aufzucht und Pflege - OSPF
Dynamische Routingprotokolle Aufzucht und Pflege - OSPFMaximilan Wilhelm
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF AbyssSasha Goldshtein
 
Modern Linux Tracing Landscape
Modern Linux Tracing LandscapeModern Linux Tracing Landscape
Modern Linux Tracing LandscapeSasha Goldshtein
 
Dpdk accelerated Ostinato
Dpdk accelerated OstinatoDpdk accelerated Ostinato
Dpdk accelerated Ostinatopstavirs
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreHsien-Hsin Sean Lee, Ph.D.
 
SoC Idling for unconf COSCUP 2016
SoC Idling for unconf COSCUP 2016SoC Idling for unconf COSCUP 2016
SoC Idling for unconf COSCUP 2016Koan-Sin Tan
 
Best Current Operational Practices - Dos, Don’ts and lessons learned
Best Current Operational Practices - Dos, Don’ts and lessons learnedBest Current Operational Practices - Dos, Don’ts and lessons learned
Best Current Operational Practices - Dos, Don’ts and lessons learnedMaximilan Wilhelm
 
Embedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOSEmbedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOS艾鍗科技
 
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Андрей Шорин
 
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Ontico
 
NAT 64 FPGA Implementation
NAT 64 FPGA ImplementationNAT 64 FPGA Implementation
NAT 64 FPGA ImplementationJanith Rukman
 
Networking in linux
Networking in linuxNetworking in linux
Networking in linuxVarnnit Jain
 

What's hot (20)

Berkeley Packet Filters
Berkeley Packet FiltersBerkeley Packet Filters
Berkeley Packet Filters
 
BPF: Next Generation of Programmable Datapath
BPF: Next Generation of Programmable DatapathBPF: Next Generation of Programmable Datapath
BPF: Next Generation of Programmable Datapath
 
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...
Fun with PRB, VRFs and NetNS on Linux - What is it, how does it work, what ca...
 
LF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OVS_17_OVS-DPDK Installation and GotchasLF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OVS_17_OVS-DPDK Installation and Gotchas
 
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-NetzwerkstackL2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
L2/L3 für Fortgeschrittene - Helle und dunkle Magie im Linux-Netzwerkstack
 
Networking
NetworkingNetworking
Networking
 
Dynamische Routingprotokolle Aufzucht und Pflege - OSPF
Dynamische Routingprotokolle Aufzucht und Pflege - OSPFDynamische Routingprotokolle Aufzucht und Pflege - OSPF
Dynamische Routingprotokolle Aufzucht und Pflege - OSPF
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF Abyss
 
Modern Linux Tracing Landscape
Modern Linux Tracing LandscapeModern Linux Tracing Landscape
Modern Linux Tracing Landscape
 
Dpdk accelerated Ostinato
Dpdk accelerated OstinatoDpdk accelerated Ostinato
Dpdk accelerated Ostinato
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
 
SoC Idling for unconf COSCUP 2016
SoC Idling for unconf COSCUP 2016SoC Idling for unconf COSCUP 2016
SoC Idling for unconf COSCUP 2016
 
Best Current Operational Practices - Dos, Don’ts and lessons learned
Best Current Operational Practices - Dos, Don’ts and lessons learnedBest Current Operational Practices - Dos, Don’ts and lessons learned
Best Current Operational Practices - Dos, Don’ts and lessons learned
 
Embedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOSEmbedded TCP/IP stack for FreeRTOS
Embedded TCP/IP stack for FreeRTOS
 
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
 
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
 
NAT 64 FPGA Implementation
NAT 64 FPGA ImplementationNAT 64 FPGA Implementation
NAT 64 FPGA Implementation
 
Understanding iptables
Understanding iptablesUnderstanding iptables
Understanding iptables
 
Anycast all the things
Anycast all the thingsAnycast all the things
Anycast all the things
 
Networking in linux
Networking in linuxNetworking in linux
Networking in linux
 

Similar to Why my network does not work? Networking Quiz 2017

3 scanning-ger paoctes-pub
3  scanning-ger paoctes-pub3  scanning-ger paoctes-pub
3 scanning-ger paoctes-pubCassio Ramos
 
Handy Networking Tools and How to Use Them
Handy Networking Tools and How to Use ThemHandy Networking Tools and How to Use Them
Handy Networking Tools and How to Use ThemSneha Inguva
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
Ccna1 v6.0 pretest exam answers 2018
Ccna1 v6.0 pretest exam answers 2018Ccna1 v6.0 pretest exam answers 2018
Ccna1 v6.0 pretest exam answers 2018Download Mipdfcom
 
Networking in Gnu/Linux
Networking in Gnu/LinuxNetworking in Gnu/Linux
Networking in Gnu/LinuxAhmed Mekkawy
 
debugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitchdebugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitch어형 이
 
119163798 icnd1-practice-questions-9tut
119163798 icnd1-practice-questions-9tut119163798 icnd1-practice-questions-9tut
119163798 icnd1-practice-questions-9tutnicolelemmimg
 
E routing final exam ccna 2 46
E routing final exam ccna 2 46E routing final exam ccna 2 46
E routing final exam ccna 2 46lslsc
 
IPv6SG_03_20121103
IPv6SG_03_20121103IPv6SG_03_20121103
IPv6SG_03_20121103@ otsuka752
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyAnne Nicolas
 
SAS (Secure Active Switch)
SAS (Secure Active Switch)SAS (Secure Active Switch)
SAS (Secure Active Switch)Security Date
 
Ccna new lab_manual_by_esp_team
Ccna new lab_manual_by_esp_teamCcna new lab_manual_by_esp_team
Ccna new lab_manual_by_esp_teamRaja Mazhar
 
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)Sam Kim
 

Similar to Why my network does not work? Networking Quiz 2017 (20)

Linux router
Linux routerLinux router
Linux router
 
MPLS LAB Practice Vol.1.pdf
MPLS LAB Practice Vol.1.pdfMPLS LAB Practice Vol.1.pdf
MPLS LAB Practice Vol.1.pdf
 
3 scanning-ger paoctes-pub
3  scanning-ger paoctes-pub3  scanning-ger paoctes-pub
3 scanning-ger paoctes-pub
 
Handy Networking Tools and How to Use Them
Handy Networking Tools and How to Use ThemHandy Networking Tools and How to Use Them
Handy Networking Tools and How to Use Them
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
Ccna1 v6.0 pretest exam answers 2018
Ccna1 v6.0 pretest exam answers 2018Ccna1 v6.0 pretest exam answers 2018
Ccna1 v6.0 pretest exam answers 2018
 
Ch5
Ch5Ch5
Ch5
 
35d70683c4fd405d89db4a5287aa4b89
35d70683c4fd405d89db4a5287aa4b8935d70683c4fd405d89db4a5287aa4b89
35d70683c4fd405d89db4a5287aa4b89
 
Routing
RoutingRouting
Routing
 
Networking in Gnu/Linux
Networking in Gnu/LinuxNetworking in Gnu/Linux
Networking in Gnu/Linux
 
debugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitchdebugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitch
 
119163798 icnd1-practice-questions-9tut
119163798 icnd1-practice-questions-9tut119163798 icnd1-practice-questions-9tut
119163798 icnd1-practice-questions-9tut
 
E routing final exam ccna 2 46
E routing final exam ccna 2 46E routing final exam ccna 2 46
E routing final exam ccna 2 46
 
Networking Lab Report
Networking Lab ReportNetworking Lab Report
Networking Lab Report
 
IPv6SG_03_20121103
IPv6SG_03_20121103IPv6SG_03_20121103
IPv6SG_03_20121103
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are money
 
SAS (Secure Active Switch)
SAS (Secure Active Switch)SAS (Secure Active Switch)
SAS (Secure Active Switch)
 
Ccna new lab_manual_by_esp_team
Ccna new lab_manual_by_esp_teamCcna new lab_manual_by_esp_team
Ccna new lab_manual_by_esp_team
 
Hacking Linksys Wrt54g
Hacking Linksys Wrt54gHacking Linksys Wrt54g
Hacking Linksys Wrt54g
 
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)
도커 없이 컨테이너 만들기 4편 네트워크네임스페이스 (2)
 

Recently uploaded

Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 

Recently uploaded (20)

Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 

Why my network does not work? Networking Quiz 2017

  • 1. Andriy Berestovskyy 2017 ( ц ) А н д р і й Б е р е с т о в с ь к и й networking hour TCP UDP NAT IPsec IPv4 IPv6 internet protocolsAH ESP authentication authorization accounting encapsulation security BGP OSPF ICMP ACLSNAT tunnel PPPoE GRE ARP discovery NDP OSI broadcast multicast IGMP PIM MAC DHCP DNS fragmentation semihalf berestovskyy Why my network does not work? Networking Quiz 2017
  • 2. LAB Quiz 1. Network Device Test 2 Lab Switch Packet Generator DUT LAN Direct Link How?
  • 3. LAB Network Device Test: Quiz! 3 Lab Switch LAN Direct Link # ifconfig eth0 10.0.0.2/24 # ping 10.0.0.1 # ifconfig eth1 10.0.0.1/24 # ping 10.0.0.2 What’s wrong?
  • 4. LAB Network Device Test: Symptoms 4 Lab Switch LAN Direct Link # ifconfig eth0 10.0.0.2/24 # ping 10.0.0.1 # ifconfig eth1 10.0.0.1/24 # ping 10.0.0.2 What’s wrong? ssh: connection timeout
  • 5. LAB: 10.2/16 Network Device Test: Analysis 5 Lab Switch LAN: 10.0/16 Direct Link: 10.0.0/24 # ifconfig eth0 10.0.0.2/24 # ping 10.0.0.1 # ifconfig eth1 10.0.0.1/24 # ping 10.0.0.2 T G I am 10.0.0.1! I am 10.0.0.1!
  • 6. Root cause — overlapping IP networks 6
  • 7. Recap: IPv4 Private Address Space 7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 Meaning?
  • 8. Recap: IPv4 Subnet Mask 8 32-bit Number 0110 0100 0000 0011 0000 0010 0000 0101 100. 3. 2. 5 IPv4 Address in Dotted Decimal Notation 1111 1111 1111 1111 1111 1111 0000 0000 255. 255. 255. 0 Subnet Mask in Dotted Decimal Notation & 0110 0100 0000 0011 0000 0010 0000 0000 100. 3. 2. 0 Subnet in Dotted Decimal Notation
  • 9. Recap: IPv4 Subnet Mask Length 9 Subnet Mask Length = 24 1111 1111 1111 1111 1111 1111 0000 0000 255. 255. 255. 0 Subnet Mask in Dotted Decimal Notation Dotted Decimal Notation: IPv4 Address: 100.3.2.5 Subnet Mask: 255.255.255.0 CIDR* Notation: IPv4 Prefix: 100.3.2.5/24 == * Classless Inter-Domain Routing
  • 10. Recap: IPv4 Private Address Space 10 10.0.0.0/8 = 10.0.0.0/24 10.0.1.0/24 [...] 10.255.255.0/24 172.16.0.0/12 = 172.16.0.0/24 172.16.1.0/24 [...] 172.31.255.0/24 192.168.0.0/16 = 192.168.0.0/24 192.168.1.0/24 [...] 192.168.255.0/24 224-8 = 216 = 65536 networks 224-12 = 212 = 4096 networks 224-16 = 28 = 256 networks
  • 11. Network Device Test: Solutions 1. Immediate solution: disconnect direct link 2. Use 172.16.0.0/12 for network tests 11 172.16.0.0/12 = 172.16.0.0/24 172.16.1.0/24 [...] 172.31.255.0/24
  • 12. Direct Link LAB Quiz 2. Network System Test 12 Lab Switch Packet Generator DUT LAN Direct Link DUT How? Packet Generator
  • 13. IP Subnetting (Example) 1. Numerate hosts: 1, 2, 3, 4 2. Numerate subnets: <prefix>.12 (connects host 1 and 2), ... 13 Host 1 Host 2 Host 3 Host 4 172.16.12 172.16.23 172.16.34 Host 1 Host 2 Host 3 Host 4
  • 14. LAB Network System Test: Quiz! 14 LAN What’s wrong?* 172.16.12 172.16.23 172.16.34 # ifconfig eth1 172.16.12.1 … eth1 172.16.12.2 … eth0 172.16.23.2 # ifconfig eth1 172.16.34.4 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3 … eth1 172.16.34.3 eth1 to eth1
  • 15. LAB Network System Test: Symptoms 15 LAN What’s wrong?* 172.16.12 172.16.23 172.16.34 # ifconfig eth1 172.16.12.1 … eth1 172.16.12.2 … eth0 172.16.23.2 # ifconfig eth1 172.16.34.4 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3 … eth1 172.16.34.3 ping 172.16.34.4 Host Unreachable
  • 16. Network System Test: Cause 1 Default netmask: ifconfig eth0 172.16.23.2 == ifconfig eth0 172.16.23.2/16 ifconfig eth1 172.16.12.2 == ifconfig eth1 172.16.12.2/16 eth0 subnet 172.16/16 == eth1 subnet 172.16/16 16 Why?
  • 17. Classful IP Networks (Legacy) 17 Why? A Class Networks 27 0xxx xxxx Leading Bits C 221 110x xxxx D —1110 xxxx Hosts Start 232-8 232-24 — 0.0.0.0 192.0.0.0 224.0.0.0 B 214 10xx xxxx 232-16 128.0.0.0 Implicit Masklen /8 /24 — /16 E —1111 xxxx — 240.0.0.0— Source: https://en.wikipedia.org/wiki/Classful_network End 127.255.255.255 223.255.255.255 239.255.255.255 191.255.255.255 255.255.255.255
  • 18. LAB System Test: Cause 1 Analysis 18 LAN 172.16.12 172.16.23 172.16.34 # ifconfig eth1 172.16.12.1 … eth1 172.16.12.2 … eth0 172.16.23.2 # ifconfig eth1 172.16.34.4 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3 … eth1 172.16.34.3 Who has 172.16.34.4? Solutions? Not me!
  • 19. System Test: Cause 1 Solution Fix the subnet mask: # ifconfig eth0 172.16.23.2/24 # ifconfig eth1 172.16.12.2/24 eth0 subnet 172.16.23/24 != eth1 subnet 172.16.12/24 19
  • 20. LAB Network System Test: Symptoms 20 LAN What’s wrong?* 172.16.12/24 172.16.23/24 172.16.34/24 # ifconfig eth1 172.16.12.1/24 … eth1 172.16.12.2/24 … eth0 172.16.23.2/24 # ifconfig eth1 172.16.34.4/24 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3/24 … eth1 172.16.34.3/24 ping 172.16.34.4 Packet Filtered
  • 21. Network System Test: Cause 2 Host 1 Routing Table: dhclient eth0 => 10.2/16 dev eth0 => default via 10.2.0.254 ifconfig eth1 172.16.12.1/24 => 172.16.12/24 dev eth1 How to reach 172.16.23/24? How to reach 172.16.34/24? 21 How?
  • 22. LAB System Test: Cause 2 Analysis 22 LAN Solutions? 172.16.12/24 172.16.23/24 172.16.34/24 # ifconfig eth1 172.16.12.1/24 … eth1 172.16.12.2/24 … eth0 172.16.23.2/24 # ifconfig eth1 172.16.34.4/24 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3/24 … eth1 172.16.34.3/24 Default route Filter the packet!
  • 23. System Test: Cause 2 Solution Fix Host 1 Routing Table (Add Static Routing): ifconfig eth1 172.16.12.1/24 => 172.16.12/24 dev eth1 ip route add 172.16.23/24 via 172.16.12.2 => 172.16.23/24 via 172.16.12.2 ip route add 172.16.34/24 via 172.16.12.2 => 172.16.34/24 via 172.16.12.2 23 172.16.12/24 172.16.23/24 172.16.34/24 172.16.23/24 via 172.16.12.2 172.16.34/24 via 172.16.12.2 … eth1 172.16.12.2/24 # ifconfig eth1 172.16.34.4/24 Host 1 Host 2 Host 3 Host 4
  • 24. LAB Network System Test: Symptoms 24 LAN What’s wrong?* 172.16.12/24 172.16.23/24 172.16.34/24 ifconfig + ip route … eth1 172.16.12.2/24 # ifconfig eth1 172.16.34.4/24 Host 1 Host 2 Host 3 Host 4ping 172.16.34.4 Network Unreachable … eth0 172.16.23.2/24
  • 25. Network System Test: Cause 3 Host 2 Routing Table: ifconfig eth0 127.16.23.2/24 => 172.16.23/16 dev eth0 ifconfig eth1 172.16.12.2/24 => 172.16.12/24 dev eth1 How to reach 10.2/16? How to reach 172.16.34/24? 25 How?
  • 26. LAB System Test: Cause 3 Analysis 26 LAN 172.16.12/24 172.16.23/24 172.16.34/24 # ifconfig eth1 172.16.12.1/24 … eth1 172.16.12.2/24 … eth0 172.16.23.2/24 # ifconfig eth1 172.16.34.4/24 Host 1 Host 2 Host 3 Host 4 … eth0 172.16.23.3/24 … eth1 172.16.34.3/24 No route to 172.16.34/24 ping 172.16.34.4 Solutions?
  • 27. System Test: Cause 3 Solution Fix All Routing Tables! 27 172.16.12/24 172.16.23/24 172.16.34/24 172.16.23/24 via 172.16.12.2 172.16.34/24 via 172.16.12.2 Host 1 Host 2 Host 3 Host 4 172.16.12/24 via 172.16.34.3 172.16.23/24 via 172.16.34.3 172.16.12/24 via 172.16.23.2 default via 172.16.34.4 172.16.34/24 via 172.16.23.3 default via 172.16.12.1 4 1 1 4 Think both directions!
  • 28. Quiz 3. Local MAC Address Why local MAC? ● Virtual Machine ● TUN/TAP ● NIC Virtual Function 28 More?
  • 29. Local MAC Address: How? 29 1. ifconfig DEV hw ether MAC 2. ip link set dev DEV address MAC 3. /etc/network/interfaces (Ubuntu): auto DEV iface DEV inet dhcp hwaddress ether MAC More?
  • 30. Local MAC Address: Quiz! 30 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # ping 172.16.0.2 # OK! # dpdkgen 172.16.0.2@01:02:03:04:05:06 # ifconfig eth1 hw ether 01:02:03:04:05:06 # ifconfig eth1 172.16.0.2/24 What’s wrong? Ping is OK!
  • 31. Local MAC Address: Symptoms 31 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # dpdkgen 172.16.0.2@01:02:03:04:05:06 # ifconfig eth1 hw ether 01:02:03:04:05:06 # ifconfig eth1 172.16.0.2/24 What’s wrong?LAN @#*&!! ^*%$+!1!
  • 32. 1. Receive frame, check Ethernet FCS 2. Add/update source MAC in MAC table 3. If multicast bit is set: a. forward to all ports, but the source 4. If destination is in MAC table: a. forward to the specific port 5. Else, forward to all ports Recap: Per-VLAN Switch Logic 32 Any issues?
  • 33. Recap: Ethernet MAC Address 33* OUI — Organizationally Unique Identifier NIC IDOUI*2 24 bits 24 bits b7 0: globally unique 1: locally managed b6 0: unicast 1: multicast b5 b4 b3 b2 b1 b0 MAC, 6 octets First octets
  • 34. Local MAC Address: Root Cause 34 0 0 1: multicast 0201 0 0 0 0 0 1 Local MAC03 04 05 06 First octets
  • 35. Local MAC Address: Analysis 35 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # dpdkgen 172.16.0.2@01:02:03:04:05:06 # ifconfig eth1 hw ether 01:02:03:04:05:06 # ifconfig eth1 172.16.0.2/24 LAN M G M GForwards to all ports Solutions? M G
  • 36. Local MAC Address: Solutions 1. Immediate solution: disconnect traffic generator 2. Use local MAC starting with 02: 02:03:04:05:06:07 3. Connect DUT directly to packet generator 4. Use VLANs: switch(config)# interface gigabitethernet 0/5 - 7 switch(config-if)# switchport access vlan VLAN 36 More? Source: CCNP SWITCH, page 97
  • 37. Local MAC Address: Admin Solution 37 Lab Switch Packet Generator DUT LAN M G lab-switch# configure terminal lab-switch(config)# interface gigabitethernet 0/5 lab-switch(config-if)# description --- Packet Generator lab-switch(config-if)# storm-control multicast level 1 Storm control Source: CCNP SWITCH, page 421 Storm control
  • 38. Quiz 4. Packet Generator 38 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # dpdkgen 172.16.0.2@02:03:04:05:06:07 # ifconfig eth1 hw ether 02:03:04:05:06:07 # ifconfig eth1 172.16.0.2/24 What’s wrong?
  • 39. Packet Generator: Symptoms 39 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # dpdkgen 172.16.0.2@02:03:04:05:06:07 # ifconfig eth1 hw ether 02:03:04:05:06:07 # ifconfig eth1 172.16.0.2/24 What’s wrong?LAN @#*&!! ^*%$+!1!
  • 40. Recap: Per-VLAN Switch Logic 40 Host A Host B Host C Host D D A PortMAC 1 2 3 4 MAC Table Learn!
  • 41. 1A Recap: Switch Logic 41 Host A Host B Host C Host D D A 1 PortMAC 1 2 3 4 MAC Table 2 1. Check Ethernet FCS 2. Add A to MAC table 3. No D in MAC table: ○ what to do?
  • 42. 1A Recap: Switch Logic 42 Host A Host B Host C Host D D A 1 PortMAC 1 2 3 4 MAC Table 2 D A D A 3 3 “Unknown unicast” D A 3 1. Check Ethernet FCS 2. Add A to MAC table 3. No D in MAC table: ○ send to all ports Problems?
  • 43. 1A Recap: Switch Logic 43 Host A Host B Host C Host D 4 Port D MAC 1 2 3 4 MAC Table 2 A D 1 1. Check Ethernet FCS 2. Add D to MAC table 3. A in MAC table: ○ send to port 1 A D 3 Never happens :(
  • 44. 1. Receive frame, check Ethernet FCS 2. Add/update source MAC in MAC table 3. If multicast bit is set: a. forward to all ports, but the source 4. If destination is in MAC table: a. forward to the specific port 5. Else, forward to all ports Recap: Per-VLAN Switch Logic 44
  • 45. Root cause — unicast flood due to unidirectional traffic (packet generator —> device under test) 45 Unicast flood?
  • 46. Unicast flood — unintentional behavior of a switch treating a unicast packet as a broadcast packet. — Wikipedia 46
  • 47. Traffic Generator: Analysis 47 Lab Switch Packet Generator DUT # ifconfig eth0 172.16.0.1/24 # dpdkgen 172.16.0.2@02:03:04:05:06:07 # ifconfig eth1 hw ether 02:03:04:05:06:07 # ifconfig eth1 172.16.0.2/24 LAN D G D GForwards to all ports Solutions? D G
  • 48. Packet Generator: Solutions 1. Immediate solution: disconnect traffic generator 2. Connect DUT directly to packet generator 3. Use VLANs: switch(config)# interface gigabitethernet 0/5 - 7 switch(config-if)# switchport access vlan VLAN 4. Add static MAC entries: switch(config)# mac address-table static MAC vlan VLAN interface gigabitethernet 0/5 ubuntu# bridge fdb add LLADDR dev DEV 48 More? Source: CCNP SWITCH, pages 97, 40
  • 49. Packet Generator: Admin Solution 49 Lab Switch Packet Generator DUT LAN D G lab-switch# configure terminal lab-switch(config)# interface gigabitethernet 0/5 lab-switch(config-if)# description --- Packet Generator lab-switch(config-if)# storm-control unicast level 1 Source: CCNP SWITCH, page 421 Storm control Storm control
  • 50. Why set speed on a port? — Make sure it is the fastest possible option! 1000Mbit/s, Full Duplex Quiz 5. Autonegotiation 50 More?
  • 51. ubuntu# ethtool -s eth0 autoneg off speed 1000 arista(config-if-Et1)# speed forced 1000full cisco(config-if)# speed 1000 Autonegotiation: How? 51
  • 52. Autonegotiation: Quiz! 52 # ethtool -s eth0 autoneg off speed 1000 What’s wrong? Host LAN
  • 53. Autonegotiation: Symptoms 53 # ethtool -s eth0 autoneg off speed 1000 What’s wrong? Host LAN Slo-o-o-o-ow!!! What’s autonegotiation?
  • 54. Autonegotiation — when two devices choose common speed, duplex, and flow control Note: if autonegotiation is disabled, the device that is capable of autonegotiation can determine speed, but cannot determine duplex, so half duplex is always assumed — Wikipedia 54Source: https://en.wikipedia.org/wiki/Autonegotiation
  • 55. Root cause — duplex mismatch, i.e. two devices operate in different duplex modes — Wikipedia 55
  • 56. Autonegotiation: Analysis 56 # ethtool -s eth0 autoneg off speed 1000 Host LAN Autonegotiation is off Autonegotiation is on Solutions?Implicit full duplex Fallbacks to half duplex
  • 58. — So, why slow? 58
  • 59. Collision Domain Recap: Collision Domain 59 Host A Host B Host C Host D Repeater Hub A B A C 1 1 A C A B 2 A C A B 2 Solutions?
  • 60. Recap: CSMA/CD Carrier-Sense Multiple Access with Collision Detection media access control method: 1. IF medium is not idle THEN goto 1 2. Start transmission + monitor for a collision 3. IF collision occurred THEN wait, goto 1 60 :(
  • 61. Networking Debug Tools: tcpdump Usage: # tcpdump -envvi eth0 -e print ethernet header -n numeric format -v verbose -v even more verbose (checksums) or use WireShark 61
  • 62. Networking Debug Tools: netstat Usage: # watch -n 1 “netstat -s | grep -vw 0” -n update interval -s display statistics -v invert match -w match whole words 62
  • 63. Networking Debug Tools: counters 1. NIC counters: # ip -s -s link -s output more statistics 2. Switch counters: switch> show interface ethernet 1 switch> show interface ethernet 1 status 63
  • 64. Networking Quiz Checklist 1. Overlapping IP networks? 2. Rarely used private prefix? 3. Default netmask? 4. ifconfig vs routing? 5. Static routing? 6. Multicast MAC? 7. Unknown unicast? 8. Duplex mismatch? 9. Debug tools? 64
  • 65. References 1. Kevin Wallace. CCNP Routing and Switching ROUTE 300-101 Official Cert Guide. Cisco Press, 2014 2. David Hucaby. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014 3. https://en.wikipedia.org/wiki/Autonegotiation 4. https://en.wikipedia.org/wiki/Duplex_mismatch 65