『壹』 如何讓內網電腦通過域名訪問自己的web伺服器
1、在每台內網電腦中的hosts文件中寫入伺服器的域名和ip信息。這個辦法麻煩點兒。
2、內網中建一個dns伺服器,把每台內網電腦的dns設置為這個dns伺服器。如果內網有dhcp的話,可以設置內網電腦為從dhcp獲得ip地址,這樣在獲取ip的同時也能獲取到dns了。
另外我覺得你的web伺服器是不是ip策略設置有問題,才造成現在內網電腦訪問不了?
『貳』 請問內網、外網如何用同樣的域名(網址)訪問內網伺服器上的某個網站
這主要是網關路由器,訪問內網伺服器上網站腔此,一定要在網關上做nat,域名指向網關的IP地址,這樣外網是可以訪問內網的伺服器,沒問題的。如果內網也用同樣的域名訪問,解釋出來的是外I網IP,內網能否訪問呢?答案是不一定,有的路由器默認是可以訪伍兄迅問的,有的路由器是不能訪問的,也有的路由器可以配置可以還是不可以。
如果不能訪問,一般的方法是使用內網的DNS伺服器,把把域名解析為內塵大網的IP地址。
『叄』 如何讓內網的CENTOS伺服器能用域名訪問
利用frp穿透技術,來實現你要的功能,不需要公網IP。畢竟現在公網IP運營商有很多限制:
以下文章轉載自吳昊博客
frp內網穿透是通過一個帶有公網IP的伺服器進行中轉,對被控主機實現反向代理,用戶通過訪問frps(中轉伺服器)來實現對frpc(被控主機)的遠程訪問。
frp流程圖如下:
frp項目地址:https://github.com/fatedier/frp
本實驗環境以阿里雲伺服器作為中轉機,中轉伺服器使用Centos7.6,被控主機使用Centos7.6,用戶使用Windows10由於網路原因,文中鏈接已經替換成了本地鏈接,如不放心,請自行去GitHub下載
frps中轉伺服器配置
1、下載frp
在一台有公網IP的主機上配置frps,我這里以阿里雲Centos7.x主機為例
1 wget http://down.whsir.com/downloads/frp_0.27.0_linux_amd64.tar.gz
2 tar xf frp_0.27.0_linux_amd64.tar.gz
3 mv frp_0.27.0_linux_amd64 /usr/local
4 cd /usr/local/frp_0.27.0_linux_amd64
5 rm -f frpc*
2、配置frps
這里使用最基礎的配置,bind_port 表示frp面板的監控埠,dashboard_user表示面板的登陸帳號,dashboard_pwd表示面板的登陸密碼,其它不動。
1 vi
frps.ini
配置文件說明:
1 [common]
2 bind_port = 7000
3
4 dashboard_user = whsir
5 dashboard_pwd = blog.whsir.com
6 dashboard_port = 8000
3、啟動frps
配置啟動服務
1 vi /etc/systemd/system/frps.service
1 [Unit]
2 Description=frps daemon
3 After=syslog.target network.target
4 Wants=network.target
5
6 [Service]
7 Type=simple
8 ExecStart=/usr/local/frp_0.27.0_linux_amd64/frps -c /usr/local/frp_0.27.0_linux_amd64/frps.ini
9
10 [Install]
11 WantedBy=multi-user.target
技行以下兩個命令
1 systemctl enable frps
2 systemctl start frps
4、訪問監控平台
http://公網IP:8000
賬號whsir
密碼blog.whsir.com
如果訪問不了,請使用ss -lnt命令檢查埠是否啟動,是否因為防火牆原因攔截。
至此frps中轉伺服器配置完成
frpc內網主機配置
1、內網主機下載frp
1 wget http://down.whsir.com/downloads/frp_0.27.0_linux_amd64.tar.gz
2 tar xf frp_0.27.0_linux_amd64.tar.gz
3 mv frp_0.27.0_linux_amd64 /usr/local
4 cd /usr/local/frp_0.27.0_linux_amd64
5 rm -f frps*
2、配置frpc
其中x.x.x.x表示frps中轉伺服器IP地址
ssh欄位:local_port = 22示被控(內網)主機的ssh埠,remote_port = 6000表示ssh中轉埠
web欄位:local_port = 80表示被控(內網)主機的web埠,remote_port = 8081表示web中轉埠
1 vi frpc.ini
1 [common]
2 server_addr = x.x.x.x
3 server_port = 7000
4
5 [ssh]
6 type = tcp
7 local_ip = 127.0.0.1
8 local_port = 22
9 remote_port = 6000
10
11 [web]
12 type = tcp
13 local_ip = 127.0.0.1
14 local_port = 80
15 remote_port = 8081
3、啟動frpc
配置啟動服務
1 vi /etc/systemd/system/frpc.service
1 [Unit]
2 Description=frpc daemon
3 After=syslog.target network.target
4 Wants=network.target
5
6 [Service]
7 Type=simple
8 ExecStart=/usr/local/frp_0.27.0_linux_amd64/frpc -c /usr/local/frp_0.27.0_linux_amd64/frpc.ini
9
10 [Install]
11 WantedBy=multi-user.target
執行如下命令
1 systemctl enable frpc
2 systemctl start frpc
至此frpc被控主機配置完成
此時可通過x.x.x.x:6000連接內網ssh,通過http://x.x.x.x:8081訪問內網主機web,訪問速度取決於帶寬
這時候,內網主機就映射到外網去了,然後,用域名指定你的frp主機ip就可以了。這樣就可以實現你的功能了。