natの設定(FreeBSD4.1R)

  1. カーネルの設定
      パラメータの追加
    1. cd /sys/i386/conf
    2. cp GENERIC hoge
    3. vi hoge (以下の行を追加)
      options         IPFIREWALL              #firewall
      options         IPFIREWALL_DEFAULT_TO_ACCEPT    #allow everything by default
      options         IPDIVERT                #divert sockets
      (IPFIREWALLはrc.confのfirewall_enableをYESにすることで置き換え可能との情報が
      あったので試したが、うまく行かなかった)
      
    4. config hoge
    5. cd ../../compile/hoge
    6. make depend
    7. make
    8. make install

  2. /etc/rc.confに以下の行を追加 (/etc/defaults/rc.confからコピーして修正)
    gateway_enable="YES"            # Set to YES if this host will be a gateway.
    firewall_enable="YES"           # Set to YES to enable firewall functionality
    firewall_type="open"            # Firewall type (see /etc/rc.firewall)
    natd_enable="YES"               # Enable natd (if firewall_enable == YES).
    natd_interface="lnc0"           # Public interface or IPaddress to use.
    natd_flags="-l"                 # Additional flags for natd.
    
    firewall_type="open" -- これを忘れるとコンソールからしか操作できなくなる
    natd_interface="lnc0" -- グローバル側のNICを指定
    natd_flags="-l" -- /var/log/alias.logが出る
    
  3. /etc/rc.localに以下の行を追加 (NICにローカルアドレスをaliasで追加)
    #!/bin/sh
    ifconfig lnc0 inet 192.168.101.1 netmask 255.255.255.0 alias
    route add -host 192.168.101.1 127.0.0.1
    
  4. reboot