1、Code maturity level options代码成熟度选项Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择General setup常规设置Local version - append to kernel release 在内核版本后面加上自定义的版本字符串(小于 64 字符),可以用“uname -a“命令看到 Automatically append version information to the version string 自动在版本
2、字符串后面添加版本信息,编译时需要有 perl 以及 git 仓库支持 Support for paging of anonymous memory (swap) 使用交换分区或者交换文件来做为虚拟内存 System V IPC System V 进程间通信(IPC)支持,许多程序需要这个功能.必选,除非你知道自己在做什么 IPC Namespaces IPC 命名空间支持,不确定可以不选POSIX Message Queues POSIX 消息队列,这是 POSIX IPC 中的一部分 BSD Process Accounting 将进程的统计信息写入文件的用户级系统调用,主要包括进程的创建
3、时间/创建者/内存占用等信息 BSD Process Accounting version 3 file format 使用新的第三版文件格式,可以包含每个进程的 PID 和其父进程的 PID,但是不兼容老版本的文件格式Export task/process statistics through netlink 通过 netlink 接口向用户空间导出任务/进程的统计信息,与 BSD Process Accounting 的不同之处在于这些统计信息在整个任务/进程生存期都是可用的 Enable per-task delay accounting 在统计信息中包含进程等候系统资源(cpu,IO
4、同步,内存交换等)所花费的时间UTS Namespaces UTS 名字空间支持,不确定可以不选 Auditing support 审计支持,某些内核模块(例如 SELinux)需要它,只有同时选择其子项才能对系统调用进行审计 Enable system-call auditing support 支持对系统调用的审计Kernel .config support 把内核的配置信息编译进内核中,以后可以通过 scripts/extract-ikconfig 脚本来提取这些信息 Enable access to .config through /proc/config.gz 允许通过/proc/c
5、onfig.gz 访问内核的配置信息Cpuset support 只有含有大量 CPU(大于 16 个)的 SMP 系统或 NUMA(非一致内存访问)系统才需要它 Kernel-user space relay support (formerly relayfs) 在某些文件系统上(比如 debugfs)提供从内核空间向用户空间传递大量数据的接口 Initramfs source file(s) initrd 已经被 initramfs 取代,如果你不明白这是什么意思,请保持空白 Optimize for size (Look out for broken compilers!) 编译时优化内
6、核尺寸(使用“-Os“而不是“-O2“参数编译),有时会产生错误的二进制代码 Enable extended accounting over taskstats 收集额外的进程统计信息并通过 taskstats 接口发送到用户空间 Configure standard kernel features (for small systems) 配置标准的内核特性(为小型系统) Enable 16-bit UID system calls 允许对 UID 系统调用进行过时的 16-bit 包装 Sysctl syscall support 不需要重启就能修改内核的某些参数和变量,如果你也选择了支持/
7、proc,将能从/proc/sys 存取可以影响内核行为的参数或变量 Load all symbols for debugging/kksymoops 装载所有的调试符号表信息,仅供调试时选择 Include all symbols in kallsyms 在 kallsyms 中包含内核知道的所有符号,内核将会增大 300K Do an extra kallsyms pass 除非你在 kallsyms 中发现了 bug 并需要报告这个 bug 才打开该选项Support for hot-pluggable devices 支持热插拔设备,如 usb 与 pc 卡等,Udev 也需要它 En
8、able support for printk 允许内核向终端打印字符信息,在需要诊断内核为什么不能运行时选择 BUG() support 显示故障和失败条件(BUG 和 WARN),禁用它将可能导致隐含的错误被忽略 Enable ELF core dumps 内存转储支持,可以帮助调试 ELF 格式的程序 Enable full-sized data structures for core 在内核中使用全尺寸的数据结构.禁用它将使得某些内核的数据结构减小以节约内存,但是将会降低性能 Enable futex support 快速用户空间互斥体可以使线程串行化以避免竞态条件,也提高了响应速度.
9、禁用它将导致内核不能正确的运行基于 glibc 的程序 Enable eventpoll support 支持事件轮循的系统调用 Use full shmem filesystem 完全使用 shmem 来代替 ramfs.shmem 是基于共享内存的文件系统(可能用到 swap),在启用 TMPFS 后可以挂载为 tmpfs 供用户空间使用,它比简单的 ramfs 先进许多 Use full SLAB allocator 使用 SLAB 完全取代 SLOB 进行内存分配,SLAB 是一种优秀的内存分配管理器,推荐使用 Enable VM event counters for /proc/vm
10、stat 允许在/proc/vmstat 中包含虚拟内存事件记数器Loadable module support可加载模块支持Enable loadable module support 打开可加载模块支持,如果打开它则必须通过“make modules_install“把内核模块安装在/lib/modules/中 Module unloading 允许卸载已经加载的模块 Forced module unloading 允许强制卸载正在使用中的模块(比较危险)Module versioning support 允许使用其他内核版本的模块(可能会出问题) Source checksum for
11、all modules 为所有的模块校验源码,如果你不是自己编写内核模块就不需要它 Automatic kernel module loading 让内核通过运行 modprobe 来自动加载所需要的模块,比如可以自动解决模块的依赖关系Block layer块设备层Enable the block layer 块设备支持,使用硬盘/USB/SCSI 设备者必选 Support for Large Block Devices 仅在使用大于 2TB 的块设备时需要 Support for tracing block io actions 块队列 IO 跟踪支持,它允许用户查看在一个块设备队列上发生
12、的所有事件,可以通过 blktrace 程序获得磁盘当前的详细统计数据 Support for Large Single Files 仅在可能使用大于 2TB 的文件时需要 IO Schedulers IO 调度器 Anticipatory I/O scheduler 假设一个块设备只有一个物理查找磁头(例如一个单独的 SATA 硬盘),将多个随机的小写入流合并成一个大写入流,用写入延时换取最大的写入吞吐量.适用于大多数环境,特别是写入较多的环境(比如文件服务器) Deadline I/O scheduler 使用轮询的调度器,简洁小巧,提供了最小的读取延迟和尚佳的吞吐量,特别适合于读取较多的
13、环境(比如数据库) CFQ I/O scheduler 使用 QoS 策略为所有任务分配等量的带宽,避免进程被饿死并实现了较低的延迟,可以认为是上述两种调度器的折中.适用于有大量进程的多用户系统 Default I/O scheduler 默认 IO 调度器Processor type and features中央处理器(CPU)类型及特性Symmetric multi-processing support 对称多处理器支持,如果你有多个 CPU 或者使用的是多核 CPU 就选上.此时“Enhanced Real Time Clock Support“选项必须开启,“Advanced Powe
14、r Management“选项必须关闭 Subarchitecture Type 处理器的子架构,大多数人都应当选择“PC-compatible“ Processor family 处理器系列,请按照你实际使用的 CPU 选择 Generic x86 support 通用 x86 支持,如果你的 CPU 能够在上述“Processor family“中找到就别选 HPET Timer Support HPET 是替代 8254 芯片的新一代定时器,i686 及以上级别的主板都支持,可以安全的选上 Maximum number of CPUs 支持的最大 CPU 数,每增加一个内核将增加 8K
15、体积 SMT (Hyperthreading) scheduler support 支持 Intel 的超线程(HT)技术 Multi-core scheduler support 针对多核 CPU 进行调度策略优化 Preemption Model 内核抢占模式 No Forced Preemption (Server) 适合服务器环境的禁止内核抢占 Voluntary Kernel Preemption (Desktop) 适合普通桌面环境的自愿内核抢占 Preemptible Kernel (Low-Latency Desktop) 适合运行实时程序的主动内核抢占Preempt The
16、Big Kernel Lock 可以抢占大内核锁,应用于实时要求高的场合,不适合服务器环境 Machine Check Exception 让 CPU 检测到系统故障时通知内核,以便内核采取相应的措施(如过热关机等) Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4 每 5 秒检测一次这些 cpu 的非致命错误并纠正它们,同时记入日志 check for P4 thermal throttling interrupt 当 P4 的 cpu 过热时显示一条警告消息Enable VM86 support 虚拟 X86
17、支持,在 DOSEMU 下运行 16-bit 程序或 XFree86 通过 BIOS 初始化某些显卡的时候才需要 Toshiba Laptop support Toshiba 笔记本模块支持 Dell laptop support Dell 笔记本模块支持 Enable X86 board specific fixups for reboot 修正某些旧 x86 主板的重起 bug,这种主板基本绝种了 /dev/cpu/microcode - Intel IA32 CPU microcode support 使用不随 Linux 内核发行的 IA32 微代码,你必需有 IA32 微代码二进制文
18、件,仅对 Intel 的 CPU 有效 /dev/cpu/*/msr - Model-specific register support 在多 cpu 系统中让特权 CPU 访问 x86 的 MSR 寄存器 /dev/cpu/*/cpuid - CPU information support 能从/dev/cpu/x/cpuid 获得 CPU 的唯一标识符(CPUID) Firmware Drivers 固件驱动程序 BIOS Enhanced Disk Drive calls determine boot disk 有些 BIOS 支持从某块特定的硬盘启动(如果 BIOS 不支持则可能无法启
19、动),目前大多数 BIOS 还不支持 BIOS update support for DELL systems via sysfs 仅适用于 DELL 机器 Dell Systems Management Base Driver 仅适用于 DELL 机器High Memory Support 最高内存支持,总内存小于等于 1G 的选“off“,大于 4G 的选“64G“ Memory split 如果你不是绝对清楚自己在做什么,不要改动这个选项 Memory model 一般选“Flat Memory“,其他选项涉及内存热插拔 64 bit Memory and IO resources 使用
20、 64 位的内存和 IO 资源 Allocate 3rd-level pagetables from highmem 在内存很多(大于 4G)的机器上将用户空间的页表放到高位内存区,以节约宝贵的低端内存 Math emulation 数学协处理器仿真,486DX 以上的 cpu 就不要选它了 MTRR (Memory Type Range Register) support 打开它可以提升 PCI/AGP 总线上的显卡 2 倍以上的速度,并且可以修正某些 BIOS 错误 Boot from EFI support EFI 是一种可代替传统 BIOS 的技术(目前的 Grub/LILO 尚不能识
21、别它),但是现在远未普及 Enable kernel irq balancing 让内核将 irq 中断平均分配给多个 CPU 以进行负载均衡,但是要配合irqbanlance 守护进程才行 Use register arguments 使用“-mregparm=3“参数编译内核,将前 3 个参数以寄存器方式进行参数调用,可以生成更紧凑和高效的代码 Enable seccomp to safely compute untrusted bytecode 只有嵌入式系统可以不选 Timer frequency 内核时钟频率,桌面推荐“1000 HZ“,服务器推荐“100 HZ“或“250 HZ“
22、kexec system call 提供 kexec 系统调用,可以不必重启而切换到另一个内核 kernel crash dumps 被 kexec 启动后产生内核崩溃转储 Physical address where the kernel is loaded 内核加载的物理地址,除非你知道自己在做什么,否则不要修改.在提供kexec 系统调用的情况下可能要修改它 Support for hot-pluggable CPUs 对热插拔 CPU 提供支持 Compat VDSO support 如果 Glibc 版本大于等于 2.3.3 就不选,否则就选上Power management opt
23、ions电源管理选项Power Management support 电源管理有 APM 和 ACPI 两种标准且不能同时使用.即使关闭该选项,X86上运行的 Linux 也会在空闲时发出 HLT 指令将 CPU 进入睡眠状态 Legacy Power Management API 传统的电源管理 API,比如软关机和系统休眠等接口 Power Management Debug Support 仅供调试使用 Driver model /sys/devices/./power/state files 内核帮助文档反对使用该选项,即将被废除ACPI (Advanced Configuration
24、and Power Interface) Support 必须运行 acpid 守护程序 ACPI 才能起作用.ACPI 是为了取代 APM 而设计的,因此应该尽量使用 ACPI 而不是 APM AC Adapter 如果你的系统可以在 AC 和电池之间转换就可以选 Battery 通过/proc/acpi/battery 向用户提供电池状态信息,用电池的笔记本可以选 Button 守护程序捕获 Power,Sleep,Lid 按钮事件,并根据/proc/acpi/event 做相应的动作,软件控制的 poweroff 需要它 Video 仅对集成在主板上的显卡提供 ACPI2.0 支持,且不
25、是所有集成显卡都支持 Generic Hotkey 统一的热键驱动,建议不选 Fan 允许通过用户层的程序来对系统风扇进行控制(开,关,查询状态),支持它的硬件并不多 Dock 支持由 ACPI 控制的集线器(docking stations) Processor 让 ACPI 处理空闲状态,并使用 ACPI C2 和 C3 处理器状态在空闲时节省电能,同时它还被 cpufreq 的“Performance-state drivers“选项所依赖 Thermal Zone 系统温度过高时可以利用 ACPI thermal zone 及时调整工作状态以避免你的 CPU 被烧毁ASUS/Medio
26、n Laptop Extras ASUS 笔记本专用,以提供额外按钮的支持,用户可以通过/proc/acpi/asus 来打开或者关闭 LCD 的背光/调整亮度/定制 LED 的闪烁指示等功能 IBM ThinkPad Laptop Extras IBM ThinkPad 专用 Toshiba Laptop Extras Toshiba 笔记本专用 Disable ACPI for systems before Jan 1st this year 输入四位数的年份,在该年的 1 月 1 日前不使用 ACPI 的功能(“0“表示一直使用) Debug Statements 详细的 ACPI 调试
27、信息,不搞开发就别选 Power Management Timer Support 这个 Timer 在所有 ACPI 兼容的平台上都可用,且不会受 PM 功能的影响,建议总是启用它.如果你在 kernel log 中看到了many lost ticks那就必须启用它 ACPI0004,PNP0A05 and PNP0A06 Container Driver 支持内存和 CPU 的热插拔 Smart Battery System 支持依赖于 I2C 的“智能电池“.这种电池非常老旧且罕见,还与当前的ACPI 标准兼容性差APM (Advanced Power Management) BIOS
28、Support APM 在 SMP 机器上必须关闭,一般来说当前的笔记本都支持 ACPI,所以应尽量关闭该该选项 Ignore USER SUSPEND 只有 NEC Versa M 系列的笔记本才需要选择这一项 Enable PM at boot time 系统启动时即启用 APM,选上这个选项能让系统自动的进行电源管理,但常常导致启动时死机 Make CPU Idle calls when idle 系统空闲时调用空闲指令(halt),只有老式的 CPU 才需要选它,且对于SMP 系统必须关闭 Enable console blanking using APM 在屏幕空白时关闭 LCD 背
29、光,事实上对所有的笔记本都无效 RTC stores time in GMT 将硬件时钟应该设为格林威治时间,否则视为本地时间.建议你使用 GMT,这样你无须为时区的改变而担心 Allow interrupts during APM BIOS calls 允许 APM 的 BIOS 调用时中断,IBM Thinkpad 的一些新机器需要这项.如果休眠时挂机(包括睡下去就醒不来),可以试试它 Use real mode APM BIOS call to power off 此驱动为某些有 Bug 的 BIOS 准备,如果你的系统不能正常关机或关机时崩溃,可以试试它CPU Frequency sc
30、aling 允许动态改变 CPU 主频,达到省电和降温的目的,必须同时启用下面的一种 governor 才行 Enable CPUfreq debugging 允许对 CPUfreq 进行调试 CPU frequency translation statistics 通过 sysfs 文件系统输出 CPU 频率变换的统计信息 CPU frequency translation statistics details 输出详细的 CPU 频率变换统计信息Default CPUFreq governor 默认的 CPU 频率调节器 performance governor 性能优先,静态的将频率设置
31、为 cpu 支持的最高频率 powersave governor 节能优先,静态的将频率设置为 cpu 支持的最低频率 userspace governor for userspace frequency scaling 既允许手动调整 cpu 频率,也允许用户空间的程序动态的调整 cpu 频率(需要额外的调频软件,比如 cpufreqd) ondemand cpufreq policy governor 立即响应,周期性的考察 CPU 负载并自动的动态调整 cpu 频率(不需要额外的调频软件),适合台式机 conservative cpufreq governor 保守,和ondemand相
32、似,但是频率的升降是渐变式的(幅度不会很大),更适合用于笔记本/PDA/AMD64 环境 ACPI Processor P-States driver 将 ACPI2.0 的处理器性能状态报告给 CPUFreq processor drivers 以决定如何调整频率,该选项依赖于 ACPI-Processor 省略的部分请按照自己实际使用的 CPU 选择 /proc/acpi/processor/performance interface 内核帮助文档反对使用该选项,即将被废除 Relaxed speedstep capability checks 放松对系统的 speedstep 兼容性检查
33、,仅在某些老旧的 Intel 系统上需要打开Bus options (PCI, PCMCIA, EISA, MCA, ISA)总线选项PCI support PCI 支持,如果使用了 PCI 或 PCI Express 设备就必选 PCI access mode PCI 访问模式,强列建议选“Any“(系统将优先使用“MMConfig“,然后使用“BIOS“,最后使用“Direct“检测 PCI 设备) PCI Express support PCI Express 支持(目前主要用于显卡和千兆网卡) PCI Express Hotplug driver 如果你的主板和设备都支持 PCI Ex
34、press 热插拔就可以选上 Use polling mechanism for hot-plug events 对热插拔事件采用轮询机制,仅用于测试目的Root Port Advanced Error Reporting support 由 PCI Express AER 驱动程序处理发送到 Root Port 的错误信息Message Signaled Interrupts (MSI and MSI-X) PCI Express 支持两类中断:INTx 使用传统的 IRQ 中断,可以与现行的PCI 总线的驱动程序和操作系统兼容;MSI 则是通过 inbound Memory Write 触
35、发和发送中断,更适合多 CPU 系统.可以使用“pci=nomsi“内核引导参数关闭 MSI PCI Debugging 将 PCI 调试信息输出到系统日志里 Interrupts on hypertransport devices 允许本地的 hypertransport 设备使用中断ISA support 现在基本上没有 ISA 的设备了,如果你有就选吧 MCA support 微通道总线,老旧的 IBM 的台式机和笔记本上可能会有这种总线 NatSemi SCx200 support 在使用 AMD Geode 处理器的机器上才可能有 PCCARD (PCMCIA/CardBus) su
36、pport PCMCIA 卡(主要用于笔记本)支持 Enable PCCARD debugging 仅供调试 16-bit PCMCIA support 一些老的 PCMCIA 卡使用 16 位的 CardBus 32-bit CardBus support 当前的 PCMCIA 卡基本上都是 32 位的 CardBus CardBus yenta-compatible bridge support 使用 PCMCIA 卡的基本上都需要选择这一项,子项请按照自己实际使用的PCMCIA 卡选择 省略的部分请按照自己实际使用的 PCMCIA 卡选择PCI Hotplug Support PCI 热
37、插拔支持,如果你有这样的设备就到子项中去选吧Executable file formats可执行文件格式Kernel support for ELF binaries ELF 是开放平台下最常用的二进制文件格式,支持动态连接,支持不同的硬件平台.除非你知道自己在做什么,否则必选 Kernel support for a.out and ECOFF binaries 早期 UNIX 系统的可执行文件格式,目前已经被 ELF 格式取代 Kernel support for MISC binaries 允许插入二进制的封装层到内核中,使用 Java,.NET,Python,Lisp 等语言编写的程序
38、时需要它Networking网络Networking options 网络选项 Network packet debugging 在调试不合格的包时加上额外的附加信息,但在遇到 Dos 攻击时你可能会被日志淹没 Packet socket 这种 Socket 可以让应用程序(比如 tcpdump,iptables)直接与网络设备通讯,而不通过内核中的其它中介协议 Packet socket: mmapped IO 让 Packet socket 驱动程序使用 IO 映射机制以使连接速度更快Unix domain sockets 一种仅运行于本机上的效率高于 TCP/IP 的 Socket,简称
39、 Unix socket.许多程序都使用它在操作系统内部进行进程间通信(IPC),比如 X Window和 syslog Transformation user configuration interface 为 IPsec(可在 ip 层加密)之类的工具提供 XFRM 用户配置接口支持 Transformation sub policy support XFRM 子策略支持,仅供开发者使用 PF_KEY sockets 用于可信任的密钥管理程序和操作系统内核内部的密钥管理进行通信,IPsec 依赖于它 TCP/IP networking TCP/IP 协议当然要选 IP: multicast
40、ing 群组广播,似乎与网格计算有关,仅在使用 MBONE 的时候才需要 IP: advanced router 高级路由,如果想做一个路由器就选吧 IP: policy routing 策略路由 IP: equal cost multipath 用于路由的基于目的地址的负载均衡 IP: verbose route monitoring 显示冗余的路由监控信息 IP: kernel level autoconfiguration 在内核启动时自动配置 ip 地址/路由表等,需要从网络启动的无盘工作站才需要这个东西 IP: tunneling IP 隧道,将一个 IP 报文封装在另一个 IP 报
41、文内的技术 IP: GRE tunnels over IP 基于 IP 的 GRE(通用路由封装)隧道 IP: multicast routing 多重传播路由 IP: ARP daemon support 这东西尚处于试验阶段就已经被废弃了 IP: TCP syncookie support 抵抗 SYN flood 攻击的好东西,要启用它必须同时启用/proc 文件系统和“Sysctl support“,然后在系统启动并挂载了/proc 之后执行“echo 1 /proc/sys/net/ipv4/tcp_syncookies“命令 IP: AH transformation IPsec
42、验证头(AH)实现了数据发送方的验证处理,可确保数据既对于未经验证的站点不可用也不能在路由过程中更改 IP: ESP transformation IPsec 封闭安全负载(ESP)实现了发送方的验证处理和数据加密处理,用以确保数据不会被拦截/查看或复制 IP: IPComp transformation IPComp(IP 静荷载压缩协议),用于支持 IPsec IP: IPsec transport mode IPsec 传输模式,常用于对等通信,用以提供内网安全.数据包经过了加密但 IP 头没有加密,因此任何标准设备或软件都可查看和使用 IP 头 IP: IPsec tunnel mod
43、e IPsec 隧道模式,用于提供外网安全(包括虚拟专用网络).整个数据包(数据头和负载)都已经过加密处理且分配有新的 ESP 头/IP 头和验证尾,从而能够隐藏受保护站点的拓扑结构 IP: IPsec BEET mode IPsec BEET 模式 INET: socket monitoring interface socket 监视接口,一些 Linux 本地工具(如:包含 ss 的 iproute2)需要使用它 TCP: advanced congestion control 高级拥塞控制,如果没有特殊需求(比如无线网络)就别选了,内核会自动将默认的拥塞控制设为“Cubic“并将“Ren
44、o“作为候补 IP: Virtual Server Configuration IP 虚拟服务器允许你基于多台物理机器构建一台高性能的虚拟服务器,不玩集群就别选了 The IPv6 protocol 你要是需要 IPv6 就选吧 NetLabel subsystem support NetLabel 子系统为诸如 CIPSO 与 RIPSO 之类能够在分组信息上添加标签的协议提供支持,如果你看不懂就别选了Security Marking 对网络包进行安全标记,类似于 nfmark,但主要是为安全目的而设计,如果你不明白的话就别选 Network packet filtering (replac
45、es ipchains) Netfilter 可以对数据包进行过滤和修改,可以作为防火墙(“packet filter“或“proxy-based“)或网关(NAT)或代理(proxy)或网桥使用.选中此选项后必须将“Fast switching“关闭,否则将前功尽弃 Network packet filtering debugging 仅供开发者调试 Netfilter 使用 Bridged IP/ARP packets filtering 如果你希望使用一个针对桥接的防火墙就打开它 Core Netfilter Configuration 核心 Netfilter 配置(当包流过 Chai
46、n 时如果 match 某个规则那么将由该规则的 target 来处理,否则将由同一个 Chain 中的下一个规则进行匹配,若不 match 所有规则那么最终将由该 Chain 的 policy 进行处理) Netfilter netlink interface 允许 Netfilter 在与用户空间通信时使用新的 netlink 接口.netlink Socket 是 Linux 用户态与内核态交流的主要方法之一,且越来越被重视. Netfilter NFQUEUE over NFNETLINK interface 通过 NFNETLINK 接口对包进行排队 Netfilter LOG ov
47、er NFNETLINK interface 通过 NFNETLINK 接口对包记录.该选项废弃了 ipt_ULOG 和 ebg_ulog 机制,并打算在将来废弃基于 syslog 的 ipt_LOG 和 ip6t_LOG 模块Layer 3 Independent Connection tracking 独立于第三层的链接跟踪,通过广义化的 ip_conntrack 支持其它非 IP 协议的第三层协议 Netfilter Xtables support 如果你打算使用 ip_tables,ip6_tables,arp_tables 之一就必须选上 “CLASSIFY“ target supp
48、ort 允许为包设置优先级,一些排队规则(atm,cbq,dsmark,pfifo_fast,htb,prio)需要使用它 “CONNMARK“ target support 类似于“MARK“,但影响的是连接标记的值 “DSCP“ target support 允许对 ip 包头部的 DSCP(Differentiated Services Codepoint)字段进行修改,该字段常用于 Qos “MARK“ target support 允许对包进行标记(通常配合 ip 命令使用),这样就可以改变路由策略或者被其它子系统用来改变其行为 “NFQUEUE“ target Support 用于
49、替代老旧的 QUEUE(iptables 内建的 target 之一),因为 NFQUEUE 能支持最多 65535 个队列,而 QUEUE 只能支持一个 “NOTRACK“ target support 允许规则指定哪些包不进入链接跟踪/NAT 子系统 “SECMARK“ target support 允许对包进行安全标记,用于安全子系统 “CONNSECMARK“ target support 针对链接进行安全标记,同时还会将连接上的标记还原到包上(如果链接中的包尚未进行安全标记),通常与 SECMARK target 联合使用 “comment“ match support 允许你在 iptables 规则集中加入注释 “connbytes“ per-connection counter match support 允许针对单个连接内部每个方向(进/出)匹配已经传送的字节数/包数 “connmark“ connection mark match support 允许针对每个会话匹配先前由“CONNMARK“设置的标记值 “conntrack“ connection tracking match support 连接跟踪匹配,是“state“的超集,它允许额外的链接跟踪信息,在需要设置一些复杂的规则(比如网关)时很有用 “D