Kết nối Linux với hai mạng cùng một lúc


10

Tôi muốn kết nối đồng thời với hai mạng bằng Ethernet và WiFi tích hợp hoặc với hai mạng WiFi bằng cách cài đặt bộ điều hợp WiFi bổ sung.

Yêu cầu của tôi: Tôi có hai bộ thiết bị (Nhóm A và nhóm B) cần liên lạc với nhau nhưng không trực tiếp. Không có internet tại địa điểm. Các thiết bị nhóm A được kết nối với bộ định tuyến WiFi A và thiết bị nhóm B với bộ định tuyến WiFi B (Điều cần thiết là không nên kết nối với cùng một bộ định tuyến). Tôi muốn thiết bị Linux kết nối với cả bộ định tuyến A và bộ định tuyến B và hoạt động như một trung gian giữa hai nhóm. Thiết bị Linux sẽ nhận được tin nhắn từ Nhóm A (thông qua bộ định tuyến A), xử lý thông tin và gửi thông báo kết quả đến Nhóm B (thông qua bộ định tuyến B) và ngược lại.

Câu hỏi:

  1. Làm cách nào để thiết lập Linux để kết nối đồng thời với hai mạng?
  2. Làm cách nào để xác định tin nhắn đến từ mạng nào và xử lý tin nhắn đó phù hợp?
  3. Làm cách nào để chỉ định mạng đích cho thông báo của tôi và gửi nó đến mạng đó?

Câu trả lời:


1

Đảm bảo rằng mỗi mạng có phạm vi mạng riêng, ví dụ wlan0192.168.0.0/24wlan1192.168.1.0/24. Điều đó trả lời câu hỏi của bạn (2) và (3): kiểm tra địa chỉ nguồn của "tin nhắn" (định dạng là tin nhắn gì? Gói UDP? Bạn đang đọc tin nhắn như thế nào?) Để xác định tin nhắn đến từ mạng nào và bạn nhắm mục tiêu một mạng bằng địa chỉ IP bạn đang gửi đến. Đây là định tuyến mạng cơ bản ...

Cho phép chuyển tiếp IP ( echo 1 > /proc/sys/net/ipv4/ip_forward) để cho phép các thiết bị trên một mạng kết nối trực tiếp với các thiết bị trên mạng khác; đặt hệ thống Linux làm cổng (mặc định) trên các thiết bị đó.

Về cách định cấu hình Linux để kết nối đồng thời với hai mạng: điều đó phụ thuộc vào phân phối của bạn và công cụ bạn đang sử dụng. Với Debian mà không networkmanagerchạy, bạn cần cấu hình /etc/network/interfacesphù hợp; với Red Hat bạn cần cấu hình các tập tin bên dưới /etc/sysconfig/networking/.

EDIT: Vô hiệu hóa máy chủ DHCP trên bộ định tuyến WiFi, gán cho giao diện LAN một IP cố định trong mạng chính xác như tôi đã mô tả ở trên (một trong 192.168.0.0/24, ví dụ 192.168.0.2 và trên 192.168.1.0/24, ví dụ 192.168 .1.2). Cung cấp cho mỗi bộ định tuyến ID không dây của riêng nó (và tất nhiên mỗi mật khẩu riêng của nó).

Cung cấp các giao diện trong địa chỉ tương ứng của Linux nhưng sau đó kết thúc bằng .1. (Khi bạn đã đặt hàng một hệ thống mới cho Linux, hãy đảm bảo rằng nó có hai giao diện, bạn có thể cần phải đặt thêm thẻ giao diện mạng (NIC) để thực hiện việc này.) Kết nối hệ thống Linux với bộ định tuyến WiFi qua cổng LAN; không sử dụng cổng WAN, tức là bộ định tuyến WiFi chỉ được sử dụng làm điểm truy cập, nó không định tuyến bất cứ thứ gì. Chúng tôi để lại định tuyến cho Linux. (Không cần thiết phải sử dụng iptablestheo mặc định mọi thứ đều được phép và không cần NAT ở đây. Tuy nhiên, có thể hữu ích khi sử dụng iptablesở giai đoạn sau để hạn chế lưu lượng được phép.)

Cài đặt máy chủ DHCP trong Linux và định cấu hình nó để phân phát địa chỉ trên cả hai giao diện (có rất nhiều tài liệu được tìm thấy về cách thực hiện điều đó). Định cấu hình máy chủ DHCP để cung cấp IP hệ thống Linux làm cổng mặc định.


Cảm ơn @wurtel. Tôi chưa quen với mạng và có kiến ​​thức làm việc về Linux. Nhưng tôi sẵn sàng thử bất cứ điều gì cần thiết để thực hiện công việc này. Tôi đã tham gia dự án này được 6 tháng và kết nối các thiết bị như được mô tả trong bài viết gốc của tôi là bước tiếp theo (bắt buộc). Nếu bạn có thể cho tôi con trỏ, tôi sẽ làm việc với họ. Tôi đã đặt hàng một máy tính Linux để làm việc và nó sẽ được phân phối vào cuối tháng. Tôi có thể thử đề xuất của bạn để bước 1 sau đó. Về 2 và 3, tôi có phải thiết lập máy chủ không? Tôi viết mã bằng Python & Java, nhưng có thể học bất cứ điều gì khác, nếu nó sẽ hoàn thành công việc.
Sivakumar Natarajan

Tôi vẫn phải tìm hiểu làm thế nào các thiết bị trong nhóm A & B sẽ giao tiếp với thiết bị Linux. Các thiết bị trong nhóm A & B là máy tính bảng (iOS và Android). Nhóm A là sinh viên và nhóm B là nhân viên. Các thiết bị giao tiếp với nhau trong nhóm nhưng giao diện thông qua thiết bị Linux để tương tác với nhóm khác.
Sivakumar Natarajan

Nếu bình luận avove là hành vi bạn muốn, cách tốt nhất của bạn là làm cho thiết bị linux hoạt động như một cây cầu.
Eyoung100

Yêu cầu cấu hình iptables cũng như
sandp 15/1/2015

Chỉnh sửa câu trả lời của tôi. Tôi nghĩ rằng việc định cấu hình giao diện mạng vượt ra ngoài phạm vi của câu hỏi này (có rất nhiều thông tin được tìm thấy về chủ đề này), bạn vẫn chưa nói Linux bạn đang sử dụng cái gì. Nếu bạn chưa quyết định, tôi khuyên dùng Debian :-)
wurtel 16/1/2015
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.