New answers tagged

1

Routing to WAN with source NAT and immediately routing back with destination NAT is called NAT hairpinning. Some NAT routers don't support NAT hairpinning at all, some can be configured to do it but suck at performance, and some do OK. Generally, routing packets through a NAT construct that is completely unnecessary is a bad idea. Also, forcing traffic ...


1

So lets assume you have a private network, which is connected via a NAT box to the public internet. On the nat box explicit rules (sometimes referred to as "port forwards") are configured to allow servers on the private network to be reached from the public network. In this case whether or not the connection is successful comes down to the behavior of the ...


-1

its because the two department are on the same network of 0.0 255.255.0.0. Put the two interface router linking management and engineering on different network and do a route.


4

That won't work with classic TCP alone. On an end system, (a bit oversimplified) TCP exposes a "socket interface" towards the upper layer, the application. Such a "socket" is defined by the tuple of "src port - destination port - src IP - dst IP". If any of these four parameters changes, the new set of parameters fails to be matched against the existing ...


1

TFO only works when the server's IP address doesn't change. 4.1.3. Client Cookie Handling The client MUST cache cookies from servers for later Fast Open connections. For a multihomed client, the cookies are dependent on the client and server IP addresses. Hence, the client should cache at most one (most recently received) cookie per client ...


3

Today, Ethernet and WiFi are almost the universal layer 2 medium, but in the early days of networking, that wasn't the case. There were many types of WAN protocols, based on different underlying technologies (mostly tied to telephone networks). These different technologies had varying MTU sizes. Fragmentation is used to accommodate traversing different ...


6

One of the two basic functions for IPv4 is packet fragmentation (the other is addressing). IP is designed to send packets from one network to another network. Each network can have a different maximum packet size. For example. the original serial WAN connections could have maximum packet sizes of greater than 4000 bytes, but ethernet specifies a maximum ...


0

Assuming the ISP is using carrier-grade NAT (CGN) to route between private IP addresses and the public Internet, the NAT router needs to be stateful - it needs to track all transport-layer connections. It must remember which remote/local IP/port combination on its public interface map to which private IP/port combination. For instance: client sends SYN ...


2

[::] is the Unspecified Address. Programs can bind to this address if they do not want to bind to a specific address but ANY address. Here is the declaration in netinet/in.h extern const struct in6_addr in6addr_any; /* :: */ If you are interested you can create small test program using C sockets API. Alternate between binding to in6addr_any and [::...


9

"::" is the ipv6 "unspecified address" (the equivilent IPv4 address is "0.0.0.0"). When binding a socket* it is used to indicate that the socket will listen on all local IPv6 addresses. Depending on the operating system and the socket options the socket may also listen on local IPv4 addresses. "::1" is the ipv6 "loopback address" (the equivilent IPv4 ...


19

:: is the unspecified address (0:0:0:0:0:0:0:0), and it is only used in packets as the source address of a host that does not yet have an address and is trying to get an address assigned. What you see in the output means that a process is binding to port 8100 for all destination addresses in the host. ::1 is the loopback address (0:0:0:0:0:0:0:1), and ...


5

With IPv6, :: expands to the required amount of :0: words (short for :0000:) to fill up the 128-bit address. :: can only be used once in an address and needs to be unambiguous. With netstat, the trailing :abcd refers to the transport-layer port number, so tcp6 ::1:80 means TCP port 80 on the ::1 loopback. tcp6 :::80 is a universal binding, to all local IP ...


2

Q1:For the packet in system A, does that field include IP B or Ra? As Ron Maupin already wrote, the IP packet contains the IP address B. However, the Ethernet frame that contains this IP packet will contain the MAC address of Ra (the network is an Ethernet network). Q2: ... If it is determined in layer 3, the information for Ra must be included ...


2

IP was designed as an end-to-end protocol. The source and destination IP addresses are the actual source and destination host IP addresses. With the exception of NAT (which breaks the IP end-to-end paradigm), the IP addresses in a packet header do not change. Host A sending a packet to Host B will create the packet with the source IP address of Host A, and ...


0

The fragment offset needs to be a multiple of 8 as its field can only store the upper 13 bits. See RFC 791: Fragments are counted in units of 8 octets. The fragmentation strategy is designed so than an unfragmented datagram has all zero fragmentation information (MF = 0, fragment offset = 0). If an internet datagram is fragmented, its ...


0

ICMP is part of the OS's network stack. It belongs to the network layer. Each ICMP message type requires specific handling. An ICMP echo request triggers an appropriate echo reply, redirects or router advertisements feed the local routing table, destination unreachable messages are passed "up" the stack to the transport-layer protocol, and so on. An echo ...


21

Because it's redundant. All the common link-layer protocols like Ethernet or WiFi have their own error checking and error correction mechanisms, so physical transmission errors are already unlikely. What's left are logic errors in the packet itself. But almost all transport protocols based on IPv6, like TCP or UDP, also have error checking to catch logical ...


43

One of the ideas around IPv6 was to speed up packet forwarding. To that end, several decisions were made. For example, the IPv6 header was greatly simplified and is a fixed length, unlike the variable length IPv4 header. Also, you cannot fragment IPv6 packets along the path, the way you can for IPv4, because packet fragmentation is resource intensive. Not ...


Top 50 recent answers are included