路由表与网关
学习检查和修改 Linux 路由表,控制网络流量如何转发到目的地
路由表与网关 是 CoddyKit 上的免费 Linux Networking & TCP/IP for Developers 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Linux Networking & TCP/IP for Developers 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Linux Networking & TCP/IP for Developers 课程共包含 4 节课。
本课时的部分内容尚未翻译,以英文显示。
What are Routing Tables?
Imagine your computer needs to send data to another device on a different network. How does it know which path to take?
That's where the routing table comes in! It's like a map for your operating system, containing rules that tell it where to forward network traffic.
- Each rule specifies a destination network or host.
- It also points to the 'next hop' or interface to use.
Inspecting Your Routing Table
In Linux, the primary command to view the routing table is ip route show (or just ip route). Let's see what it looks like:
ip route showUnderstanding Route Output
When you run ip route show, you'll see entries that typically include:
- Destination: The network or host traffic is headed to.
- via: The gateway (next hop router) to send traffic through.
- dev: The local network interface to use (e.g., eth0, wlan0).
- src: The source IP address your system will use for outgoing packets.
- metric: A preference value; lower is generally preferred.
The Default Gateway
One crucial entry in the routing table is the default route. It's often shown as default via <IP> dev <interface>.
This is your network's 'gateway of last resort'. If no other specific route matches the destination IP, traffic is sent to this default gateway. This is usually your router that connects you to the internet.
ip route show defaultAdding a Static Route
You can manually add routes to the routing table. This is useful for directing traffic to specific networks that aren't reachable via the default route, or for creating isolated network segments.
Use ip route add to add a temporary static route. Remember, sudo is often required.
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
# This adds a route for 192.168.2.0/24
# via gateway 192.168.1.1 on eth0Verifying the New Route
After adding a route, it's good practice to verify that it's present in the routing table. Just run ip route show again and look for your newly added entry.
ip route showDeleting a Static Route
Just as you can add routes, you can also remove them. This is useful for correcting mistakes or cleaning up temporary configurations.
Use ip route del with the exact same parameters you used to add the route.
sudo ip route del 192.168.2.0/24 via 192.168.1.1 dev eth0
# Removes the route we just addedGateways: The Next Hop
A gateway is a network node that serves as an access point to another network. It's essentially a router that forwards packets between different networks.
When your computer sends data to a destination outside its immediate local network, it sends the data to its configured gateway, which then handles the forwarding.
Temporary vs. Permanent Routes
Routes added with the ip route command are temporary. This means they will be lost if your network service restarts or if the system reboots.
For permanent routes, you need to configure them in system-specific network configuration files. The exact location depends on your Linux distribution (e.g., files under /etc/netplan/, /etc/network/interfaces, or in network scripts).
Routing Table Challenge
You just learned how to inspect and manipulate routing tables. Let's test your understanding!
Recap: Routing Essentials
Great job! You've learned the basics of Linux routing tables and gateways.
- Routing tables guide network traffic.
- Use
ip route showto inspect them. - The default route is for unknown destinations.
- You can temporarily add and delete routes with
ip route addandip route del. - Gateways are next-hop devices for reaching other networks.
Understanding routing is key to troubleshooting network connectivity!
常见问题解答
「路由表与网关」课时是免费的吗?
是的 — 「路由表与网关」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Linux Networking & TCP/IP for Developers 课程的其余内容,请升级到 CoddyKit PRO。 Linux Networking & TCP/IP for Developers 课程共包含 4 节课。
「路由表与网关」这节课中我会学到什么?
学习检查和修改 Linux 路由表,控制网络流量如何转发到目的地 你通过在浏览器中直接运行的动手代码来练习 Linux Networking & TCP/IP for Developers,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Linux Networking & TCP/IP for Developers 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Linux Networking & TCP/IP for Developers 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「路由表与网关」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Linux Networking & TCP/IP for Developers 课中编写并运行代码吗?
能。每节 Linux Networking & TCP/IP for Developers 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。