giải quyết systemd
liên kết với lo
giao diện:
# ss -aunp src == 127.0.0.53 thể thao == 53
State Recv-Q Send-Q Địa chỉ cục bộ:Cổng Địa chỉ ngang hàng:Cổng
UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:* người dùng:(("systemd-resolve",pid=44157,fd=17))
Điều này giới hạn các tuyến có sẵn dù chỉ một lần net.ipv4.conf.br0.route_localnet=1
được áp dụng cho những thiết lập trên lo
giao diện:
$ ip -4 lộ trình hiển thị bảng tất cả dev lo
bảng quảng bá 127.0.0.0 liên kết phạm vi hạt nhân proto cục bộ src 127.0.0.1
local 127.0.0.0/8 bảng local proto kernel phạm vi Host src 127.0.0.1
bảng local 127.0.0.1 local proto kernel phạm vi máy chủ src 127.0.0.1
phát 127.255.255.255 bảng liên kết phạm vi hạt nhân proto cục bộ src 127.0.0.1
Không ai sẽ phù hợp.
Địa chỉ nguồn sẽ cần phải được thay đổi. Trong khi hiếm khi được sử dụng gõ nat móc đầu vào
loại chuỗi sẽ cho phép thay đổi địa chỉ nguồn trước khi ứng dụng nhận được, thì đã quá muộn: điều này xảy ra sau khi định tuyến xong và gói đã bị hủy. Vì vậy, NAT trạng thái không thể xử lý trường hợp này.
Thay vào đó, một proxy có thể được sử dụng cho việc này (sau khi xóa tất cả các cài đặt nat cụ thể). Đây là một ví dụ sử dụng socat
. socat
không phải là một ứng dụng chuyên dụng, có những cảnh báo đặc biệt dành cho UDP.
Xử lý TCP (OP quên rằng DNS cũng sử dụng TCP)
socat TCP4-LISTEN:53,bind=192.168.1.2,reuseaddr,fork TCP4:127.0.0.53:53
Không thể liên kết với IN_ADDR_ANY
vì 127.0.0.53:53 đã bị ràng buộc, nên hãy liên kết với địa chỉ do OP cung cấp (vì những lý do sai): 192.168.1.2. Bên cạnh đó, nó khá đơn giản.
xử lý UDP
socat -T 20 UDP4-LISTEN:53,bind=192.168.1.2,reuseaddr,fork UDP4:127.0.0.53:53
Thời gian chờ của những năm 20 là ở đây bởi vì socat
không thể yêu cầu dừng ngay sau khi nhận được câu trả lời gói UDP duy nhất và sẽ giữ tất cả các lần rẽ nhánh socat
lệnh tích lũy theo thời gian.
Mặc dù UDP không phải liên kết với một địa chỉ trong trường hợp này, nhưng việc liên kết với một địa chỉ bằng UDP sẽ tránh được cảnh báo liên quan đến đa nhà điều hành và nhu cầu sử dụng IP_PKTINFO
tùy chọn ổ cắm.