Nginx利用Lua+Redis实现动态封禁IP的方法

文章主要介绍了Linux系统下Nginx支持ipv6的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、查看现有nginx是否支持ipv6

需要执行以下命令,查看现有nginx是否支持ipv6,如果参数中具有--with-ipv6,则支持,如 果没有,则不支持,需要重新编译nginx。

  1. # 此处的nginx路径以您实际的nginx启动文件路径为准
  2. /usr/local/nginx-1.14.0/sbin/nginx -V

二、 重新编译nginx支持ipv6

1、下载相对应的nginx安装包;

2、解压nginx的安装包;

3、进入nginx解压后的安装文件中,先执行 ./configure 命令,后面添加上上面 /usr/local/nginx-1.14.0/sbin/nginx -V 获得的参数,并再添加 --with-ipv6 参数,执行;

4、执行make命令,千万别执行 make install 命令,否则就把原来的nginx给覆盖了;

5、备份原来路径下的 nginx 执行文件:

  1. sudo cp /usr/local/nginx-1.14.0/sbin/nginx /usr/local/nginx-1.14.0/sbin/nginx.old

6、make之后进入安装文件夹下的 objs 文件夹下;

  1. cd objs

7、停掉原来的nginx服务,覆盖掉原来的 nginx 执行文件后,启动nginx服务:

  1. sudo /usr/local/nginx-1.14.0/sbin/nginx -s stop
  2. sudo cp nginx /usr/local/nginx-1.14.0/sbin/nginx
  3. sudo /usr/local/nginx-1.14.0/sbin/nginx

补充:

同时监听IPV4和IPV6

  1. server {
  2. ....
  3. listen [::]:80;
  4. ...
  5. }

只监听IPV6

  1. server {
  2. ....
  3. listen [::]:80 default ipv6only=on;
  4. ...
  5. }

监听指定IPV6地址

  1. server {
  2. ....
  3. listen [3608:f0f0:3002:31::1]:80;
  4. ...
  5. }

以上就是Nginx利用Lua+Redis实现动态封禁IP的方法的全部内容,希望对大家的学习有所帮助,