2017-12-02 187 views
-2

我有2個系統。我在它們兩個上運行ifconfig。我通過移動熱點的無線網絡訪問互聯網。我正在粘貼兩者的ifconfig輸出。我猜這兩個IP是127.0.0.1(雖然我使用2個不同的手機)。我需要使用tcp/ip套接字在它們之間進行通信。請確認我。如果我能找到一個c程序來找到自己的IP地址,那更好。如果兩個IP相同,則需要更改其IP地址。爲什麼兩臺設備的IP相同?他們如何訪問互聯網?我的目標設備將是2個帶SIM卡的嵌入式設備,使用gprs進行套接字通信。ifconfig->這是我的IP地址給TCP/IP套接字的結果

System1->

enp2s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 
     ether 2c:56:dc:29:7f:66 txqueuelen 1000 (Ethernet) 
     RX packets 0 bytes 0 (0.0 B) 
     RX errors 0 dropped 0 overruns 0 frame 0 
     TX packets 0 bytes 0 (0.0 B) 
     TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 
     inet 127.0.0.1 netmask 255.0.0.0 
     inet6 ::1 prefixlen 128 scopeid 0x10<host> 
     loop txqueuelen 1000 (Local Loopback) 
     RX packets 233 bytes 15817 (15.8 KB) 
     RX errors 0 dropped 0 overruns 0 frame 0 
     TX packets 233 bytes 15817 (15.8 KB) 
     TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 

wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 
     inet 192.168.43.26 netmask 255.255.255.0 broadcast 192.168.43.255 
     inet6 2405:204:f184:563e:e0f8:7b7e:3ea4:244b prefixlen 64 scopeid 0x0<global> 
     inet6 fe80::e9a9:9f55:2fd4:2255 prefixlen 64 scopeid 0x20<link> 
     inet6 2405:204:f184:563e:f2da:16c6:1bd5:15ee prefixlen 64 scopeid 0x0<global> 
     ether 80:a5:89:3d:85:3b txqueuelen 1000 (Ethernet) 
     RX packets 403 bytes 307722 (307.7 KB) 
     RX errors 0 dropped 0 overruns 0 frame 0 
     TX packets 945 bytes 134915 (134.9 KB) 
     TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 

系統2->

lo  Link encap:Local Loopback 
      inet addr:127.0.0.1 Mask:255.0.0.0 
      inet6 addr: ::1/128 Scope:Host 
      UP LOOPBACK RUNNING MTU:65536 Metric:1 
      RX packets:289 errors:0 dropped:0 overruns:0 frame:0 
      TX packets:289 errors:0 dropped:0 overruns:0 carrier:0 
      collisions:0 txqueuelen:0 
      RX bytes:26628 (26.6 KB) TX bytes:26628 (26.6 KB) 

wlan0  Link encap:Ethernet HWaddr e4:02:9b:84:a4:72 
      inet addr:192.168.43.217 Bcast:192.168.43.255 Mask:255.255.255.0 
      inet6 addr: 2405:204:f184:563e:5d6b:9906:ff66:ab2c/64 Scope:Global 
      inet6 addr: 2405:204:f184:563e:e602:9bff:fe84:a472/64 Scope:Global 
      inet6 addr: fe80::e602:9bff:fe84:a472/64 Scope:Link 
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 
      RX packets:1659 errors:0 dropped:0 overruns:0 frame:0 
      TX packets:964 errors:0 dropped:0 overruns:0 carrier:0 
      collisions:0 txqueuelen:1000 
      RX bytes:545249 (545.2 KB) TX bytes:179680 (179.6 KB) 
+3

127.0.0.1是環回地址。您無法從外部連接到它。您應該使用192.168。*。*地址。 – EJP

回答

0

首先,127.0.0.1是設備loopback地址,每個具有網絡卡將有該設備。

現在根據你想要達到的要求我需要使用tcp/ip套接字在兩者之間進行通信。如果您使用移動熱點作爲路由器,請確保兩臺設備都連接到一個熱點,以便它們都在一個網絡上,而不是兩個不同的網絡。

然後確保設備的防火牆允許您想要使用的TCP端口上的入站/出站流量,並且您應該能夠在兩個設備之間進行通信。

這兩個設備連接到兩個不同的移動熱點(這被認爲是兩個不同的網絡),你不能實現,因爲手機沒有一個功能,你可以添加端口轉發規則允許來自互聯網的流量路由器呢。

+0

所以,我想用2個SIM卡製作2個嵌入式設備。如果他們之間的距離假設爲1公里,他們如何相互溝通。 –

相關問題