You can easily configure IPv6 under nginx as follows. First, make sure IPv6 networking is working properly. See IPv6 CentOS / RHEL, FreeBSD, Debian / Ubuntu Linux, and Novell Suse/OpenSUSE Linux network configuration for more info.
Compile Nginx With IPv6 Support
You need to pass the --with-ipv6 option to configure command. Type the following command to compile it, enter:# cd /path/to/nginx-src-code/
# ./configure --without-http_autoindex_module --without-http_userid_module \
--without-http_auth_basic_module --without-http_geo_module \
--without-http_fastcgi_module --without-http_empty_gif_module \
--with-poll_module --with-http_stub_status_module \
--with-http_ssl_module --with-ipv6
# make install
Verify the same with the following command:
# /usr/local/nginx/sbin/nginx -V
Sample outputs:
nginx version: nginx/0.8.46Make sure you pass options as per your setup.
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-48)
TLS SNI support disabled
configure arguments: --without-http_autoindex_module --without-http_userid_module --without-http_auth_basic_module --without-http_geo_module --without-http_fastcgi_module --without-http_empty_gif_module --with-poll_module --with-http_stub_status_module --with-http_ssl_module --with-ipv6
Edit Configuration File
Edit /usr/local/nginx/conf/nginx.conf, enter:# vi /usr/local/nginx/conf/nginx.conf
Make sure listen directive is updated as follows (this must be placed between server { ... } ) :
Reload and restart nginx configuration, enter:
# listen to all IPv4 and IPv6 interfaces:
# ipv4
listen :80;
# ipv6
listen [::]:80;
# /usr/local/nginx/sbin/nginx -t && /usr/local/nginx/sbin/nginx -s reload
How Do I Listen Only On 2607:f0d0:1002:59::2?
Edit config file as follows:listen listen [2607:f0d0:1002:59::2]:80;
How Do I Verify IPv6 and IPv4 Both Are Working?
Use the netstat command to verify ip binding:# netstat -tulpna | grep nginx
Sample outputs:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 33094/nginxThe last line indicates that IPv6 and first two line indicate HTTP and HTTPS connection for IPv4. You can also use the wget command or a web browser to verify the same:
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 33094/nginx
tcp 0 0 :::80 :::* LISTEN 33094/nginx
$ wget http://[2607:f0d0:1002:59::2]/
No comments:
Post a Comment