Product SiteDocumentation Site

第 10 章 基本网络设置

10.1. 网关
10.2. X.509 认证
10.2.1. 创建免费的受信任证书
10.2.2. 公钥基础设施:easy-rsa
10.3. 虚拟专用网络
10.3.1. OpenVPN
10.3.2. SSH 下的虚拟专属网络
10.3.3. 互联网安全协议
10.3.4. PPTP
10.4. 品质服务
10.4.1. 原则与机制
10.4.2. 配置与应用
10.5. Dynamic Routing
10.6. IPV6
10.6.1. Tunneling
10.7. Domain Name Servers (DNS)
10.7.1. DNS software
10.7.2. Configuring bind
10.8. DHCP
10.8.1. 配置
10.8.2. DHCP and DNS
10.9. 网络诊断工具
10.9.1. 本地诊断:netstat
10.9.2. Remote Diagnosis: nmap
10.9.3. Sniffers: tcpdump and wireshark
Linux从Unix系统上传承了网络的功能,Debian 同样提供了一整套完整的工具用于配置和管理网络。本章将向大家介绍这些工具。

10.1. 网关

“网关”用于连接多个网络。这个词常常用于表示本地网络通往外部 IP 地址的“出口”。网关充当路由器的身份,在它的多个网络接口间转发 IP 包,从而把它所连接的不同网络联系起来。
局域网路接在私人网址范围内 (不在网络网络的路由上),网关就需要 地址掩蔽 让其经由网络与外界沟通。掩蔽作业是网络层次的代理工作:内部机器,都被网关取代 (因为网关有外部的路由地址),借由掩蔽链接,数据送出出去,进来的数据经由掩蔽链接至内部机器。网关以指定的 TCP 端口运行此工作,通常是较高的号码 (超过 60000)。对外部而言,经由内部机器的链接,就是来自此等保留端口号。
网关有两种 网络地址转换 (英文缩写 NAT) 的功能。第一种是 目的 NAT (DNAT),改变封包目的 IP 地址 (与 TCP 或 UDP 端口)。链接追踪机制同时改变后续封包的链接。第二种 NAT 是 来源 NAT (SNAT),其中的 伪装 是特例之一;SNAT 改变出去链接的来源 IP 地址 (与 TCP 或 UDP 端口)。如同 DNAT,所有的封包由链接追踪机制处理。NAT 只用于 IPv4 及其限制的地址空间;在 IPv6 内,其宽广的地址技术允许直接在互联网路由 (并不表示可以近用内部机器,因为防火墙可以过滤流量) 减少 NAT 的用途。
理论讲多了,看看实务怎么做。system into a gateway is a simple matter of enabling the appropriate option in the Linux kernel, 经由 /proc/ 虚拟文件系统,从 Linux 核心进入 Debian 系统的网关:
# echo 1 > /proc/sys/net/ipv4/conf/default/forwarding
This option can also be automatically enabled on boot if /etc/sysctl.conf or a configuration file in /etc/sysctl.d/ sets the net.ipv4.conf.default.forwarding option to 1.

例 10.1. /etc/sysctl.conf 文件

net.ipv4.conf.default.forwarding = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.tcp_syncookies = 1
在 IPv6 也能取得同样的效果,把手册中的 ipv4 换为 ipv6,并使用 net.ipv6.conf.all.forwarding/etc/sysctl.conf 文件内。
启用 IPv4 伪装就有点复杂,涉及配置 netfilter 防火墙。
需配置 netfilter,才能使用 NAT (IPv4)。因为此种组件的主要目的是软件包筛选,详情列在 第 14 章: “安全 (见 第 14.2 节 “防火墙或者包过滤”)。